Design and develop embedded software for complex systems. Collaborate with cross-functional teams to integrate software with hardware components. Ensure software meets performance, reliability, and security requirements. Develop and maintain technical documentation and test plans. Stay up-to-date with industry trends and emerging technologies.
Key Responsibilities
- Design and develop embedded software for complex systems, including firmware and device drivers.
- Collaborate with cross-functional teams, including hardware engineers, system architects, and quality assurance engineers.
- Integrate software with hardware components, ensuring seamless operation and optimal performance.
- Develop and maintain technical documentation, including design documents, test plans, and user manuals.
- Stay up-to-date with industry trends and emerging technologies, including new programming languages, tools, and methodologies.
Requirements
- Bachelor's degree in Computer Science, Electrical Engineering, or related field.
- 5+ years of experience in embedded software development, including experience with C++ and Linux.
- Strong understanding of embedded systems, including RTOS and FPGA.
- Excellent communication and collaboration skills, with ability to work effectively in a team environment.
- Ability to work in a fast-paced environment and adapt to changing priorities and deadlines.