Embedded Software Engineer
We are seeking a skilled Embedded Software Engineer with expertise in new product development to join our dynamic team. As an Embedded Software Engineer, you will play a key role in designing, developing, and bringing innovative products to market, with a focus on embedded software and firmware development.
Responsibilities:
-
Embedded Software Development:
-
Lead the development of embedded software and firmware for new products, ensuring they meet performance, reliability, and scalability requirements.
-
Write, test, and debug code in programming languages such as C and C++.
-
-
Product Design Collaboration:
-
Collaborate closely with cross-functional teams, including hardware engineers, product managers, and UX designers, to align software development with product goals.
-
-
System Architecture:
-
Contribute to the system architecture design, ensuring that the embedded software components integrate seamlessly with hardware components and other system elements.
-
-
Prototyping and Testing:
-
Build and test prototypes of new product designs to validate embedded software functionality.
-
Conduct thorough testing and debugging to identify and resolve issues.
-
-
Documentation:
-
Create and maintain comprehensive documentation, including code documentation, design specifications, and test plans.
-
-
Continuous Improvement:
-
Stay up-to-date with embedded software development trends, tools, and best practices to improve product development processes continually.
-
-
Compliance and Quality:
-
Ensure that embedded software development follows industry standards, safety regulations, and quality requirements.
-
-
Product Launch:
-
Play a crucial role in the product launch process, including software testing, validation, and support during product release.
-
-
Mentorship and Collaboration:
-
Provide guidance and mentorship to junior engineers and collaborate effectively with multidisciplinary teams.
-
Qualifications:
-
Proven experience as an Embedded Software Engineer, Computer Science, or a related field with a focus on new product development.
-
Strong programming skills in languages like C and C++ for embedded systems.
-
Familiarity with embedded development tools, IDEs, and debugging techniques.
-
Experience with microcontrollers and microprocessors.
-
Knowledge of communication protocols (e.g., UART, SPI, I2C) and real-time operating systems (RTOS).
-
Understanding of hardware-software interfaces and system integration.
-
Excellent problem-solving and critical-thinking skills.
-
Effective communication and teamwork abilities.