Embedded Engineer Fremont, CA
Design, develop, and optimize embedded software for high-performance systems.
Collaborate with hardware engineers to ensure seamless integration of software with embedded hardware platforms.
Write and maintain device drivers, low-level system code, and software for embedded systems.
Analyze system performance and implement real-time optimizations to meet performance and power constraints.
Develop software for various embedded operating systems, such as RTOS, Linux, or bare metal systems.
Debug complex embedded systems using a range of tools (e.g., debuggers, logic analyzers, oscilloscopes).
Participate in code reviews, ensuring adherence to best practices and code quality standards.
Work with cross-functional teams to define system requirements and drive projects from concept through deployment.
Implement and optimize communication protocols for embedded systems (e.g., I2C, SPI, UART, CAN).
Ensure compliance with industry standards and contribute to the development of technical documentation, including design specifications and user manuals.
Mentor junior engineers and provide technical leadership in the development process.
Stay updated on emerging technologies and trends within the embedded domain and apply them to ongoing and new projects.
Bachelor's or Master's degree in Computer Science, Electrical Engineering, Computer Engineering, or a related field.
5+ years of experience in embedded software development.
Strong proficiency in C/C++ programming for embedded systems.
Experience with RTOS or Linux for embedded platforms.
Familiarity with microcontroller architectures (e.g., ARM, PIC, or similar).
Solid understanding of hardware-software integration and low-level system design.
Experience with communication protocols (e.g., I2C, SPI, UART, CAN).
Proficiency in debugging embedded systems using tools such as JTAG, debuggers, oscilloscopes, and logic analyzers.
Experience with version control systems (e.g., Git) and continuous integration practices.
Strong analytical and problem-solving skills.
Ability to work effectively in a collaborative team environment.
Excellent verbal and written communication skills.