Embedded Software Engineer
Location: San Jose, California - Austin, Texas - Boston, Massachusetts Job Type: Full-Time/Contract
Pay Rate: $50/hr
Job Summary:
We are seeking a skilled Embedded Software Engineer to design, develop, and maintain software solutions for cutting-edge embedded systems. The ideal candidate will have a strong foundation in embedded software development, real-time operating systems, and modern industry technologies. This is a unique opportunity to contribute to innovative projects in a fast-paced, technology-driven environment.
Key Responsibilities:
- Design, implement, and optimize embedded software for various hardware platforms.
- Develop and maintain device drivers, firmware, and middleware components.
- Collaborate with cross-functional teams including hardware engineers, system architects, and QA.
- Conduct software testing, debugging, and performance tuning.
- Integrate and validate new product designs.
- Ensure compliance with industry standards and best practices.
- Provide technical documentation and support throughout the software development lifecycle.
Required Skills & Experience:
- Bachelor's or Master's degree in Electrical Engineering, Computer Science, or related field.
- 3+ years of embedded software development experience.
- Proficiency in C/C++ programming.
- Experience with real-time operating systems (RTOS) such as FreeRTOS, ThreadX, or QNX.
- Knowledge of microcontroller architectures (ARM Cortex, AVR, PIC, etc.).
- Familiarity with hardware interfaces like SPI, I2C, UART, and CAN.
- Strong debugging skills using tools like JTAG, oscilloscopes, and logic analyzers.
- Version control systems (Git, SVN) experience.
Preferred Skills:
- Experience with modern development frameworks like Zephyr or Yocto.
- Knowledge of communication protocols like Bluetooth, Zigbee, LoRa, or MQTT.
- Familiarity with IoT platforms and cloud services (AWS IoT, Azure IoT).
- Knowledge of cybersecurity standards and secure coding practices.
- Experience in AI/ML integration for embedded systems.
- Familiarity with Agile/Scrum development methodologies.
Soft Skills:
- Strong problem-solving and analytical skills.
- Excellent communication and collaboration abilities.
- Self-motivated and detail-oriented.
- Ability to work independently and as part of a team.