Job Title:Senior Android Low-Level Embedded Software Engineer
Duration: Full Time
Location: Boston, MA (Onsite)
About the Company:
BigRio is a leading IT Services company focused on Data and Analytics in the Healthcare Industry segment. We are committed to being the client’s strategic partner in accelerating digital transformation and fostering innovation. With a relentless focus on delivering exceptional solutions, we empower businesses to thrive in the rapidly evolving digital landscape.
About Job:
We are seeking a highly skilled and experienced Senior Embedded Software Engineer to join our team. As a Senior Android Low-Level Embedded Software Engineer, you will be responsible for designing, developing, and maintaining software for embedded systems. You will leverage your expertise in Android development to contribute to the integration of embedded systems with Android platforms. You will work closely with cross-functional teams, including hardware engineers, firmware engineers, and product managers, to deliver high-quality embedded software solutions. Your expertise in embedded systems, low-level programming, and software development will be crucial in ensuring the success of our products.
Your Superpowers
You define yourself as an "embedded systems virtuoso" with a knack for "Android development wizardry" and a deep understanding of "low-level programming sorcery." Colleagues often describe you as the "architect of seamless integration," a "solution-finding maestro," and a "team player extraordinaire."
The Job’s Responsibilities
● Design and develop Android applications for embedded systems, ensuring compatibility with various devices and platforms.
● Design and develop software for different types of embedded systems, ensuring that it meets the requirements, and successfully take it through the entire software development lifecycle until it is deployed in commercial products. This will include microcontrollers, DSPs, and FPGAs.
● Collaborate with hardware engineers to define system requirements and specifications for embedded software development.
● Write efficient, modular, and scalable code for embedded systems using languages such as C/C++.
● Implement and optimize device drivers, board support packages (BSPs), and firmware for peripherals and communication interfaces.
● Conduct thorough testing and debugging of embedded software to ensure high quality and reliability.
● Work closely with the firmware team to integrate software and firmware components seamlessly.
● Stay up to date with industry trends and emerging technologies in embedded systems to drive innovation and continuous improvement.
● Collaborate with cross-functional teams to ensure successful integration of software with hardware and overall system functionality.
● Participate in code reviews, architecture discussions, and technical design sessions to drive engineering excellence and maintain code quality standards.
● Document software designs, specifications, and development processes for future reference and knowledge sharing.
● Troubleshoot and resolve software defects and performance issues, ensuring timely and effective resolutions.
Key Technical Requirements
● Proven industry experience as an Embedded Software Engineer, with a focus on embedded systems and low-level programming.
● Strong proficiency developing in Android-headed or headless architectures.
● Strong proficiency in C/C++ programming languages for embedded systems.
● In-depth knowledge of embedded systems architectures, real-time operating systems (RTOS), and hardware-software interaction.
● Extensive experience with the Android Native Development Kit (NDK) and Java Native Interface (JNI) for integrating native code with Android applications.
● Experience with embedded development tools, debuggers, emulators, and compilers.
● Experience developing software targeting embedded SoCs such as ARM, NXP, Microchip, etc.
● Familiarity with communication protocols such as UART, SPI, I2C, Ethernet, and wireless technologies (Bluetooth, Wi-Fi, etc.).
● Solid understanding of software development methodologies, version control systems, and software testing techniques for embedded systems.
● Strong problem-solving skills and the ability to debug complex software and hardware integration issues.
● Experience with agile development methodologies (e.g., Scrum) is advantageous. In addition, while not essential, it is a definite plus if:
● Proficiency in radar signal processing techniques, DSP algorithms, and ML preferred but not essential.
● Matlab/Simulink/Octave or similar tool knowledge
● Experience implementing embedded software on multi-core processors.
● Programming skill set with scripting languages (e.g. Python, TCL, Perl, etc.)
Personal Qualities
We’d love you to be self-aware, thoughtful, empathetic, diligent, hard-working, a lifelong learner, and a great team player. You’d show us that you have:
Strong interpersonal skills and the ability, perhaps even a passion, to build camaraderie and work effectively on difficult goals with a broad range of business and technical collaborators across cultures and skills.
Self-awareness to know your own superpower (nobody is great at all things) and the humility to permit others to exercise theirs on a team of accomplished specialists
Respect and empathy to recognize and support the goals of the company, your team, and colleagues in ways that build trust for people to feel safe to“disagree and commit” (The Amazon Way)
A work ethic that doesn’t quit, that recognizes that time-to-market is often the only thing that separates teams that win from those that don’t (“No matter how hard you work, someone else is working harder.” — Elon Musk)
Tenacity and a dogged determination to never give up
Innate hunger to constantly do better and evolve both your work product and yourself (You’re a lifelong learner)
The courage to move fast, break things, and ship products that people use (“Real artists ship” — Steve Jobs)
Exceptional communication skills characterized by meticulous attention to detail and precision in verbal and written expression. Consistently deliver clear, comprehensive, and precise information to ensure all team members are aligned and well-informed.
Education and Experience
● A Master's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related field, or equivalent work experience
● Real-world work experience in relevant roles in a commercial setting
● Ideally, full life cycle experience with an electronics product that has shipped and achieved meaningful commercial success.
● Preference for candidates with experience in a startup or fast-paced environment and exposure to ambient sensing and sensor fusion technologies.
Equal Opportunity Statement:
BigRio is an equal opportunity employer. We prohibit discrimination and harassment of any kind based on race, religion, national origin, sex, sexual orientation, gender identity, age, pregnancy, status as a qualified individual with disability, protected veteran status, or other protected characteristic as outlined by federal, state, or local laws. BigRio makes hiring decisions based solely on qualifications, merit, and business needs at the time. All qualified applicants will receive equal consideration for employment.