As a Software Engineer, you will play a pivotal role in designing, developing, and rigorously testing embedded systems for our innovative products, with a strong emphasis on JavaCard-based solutions.
Job Duties
1. Embedded Software Development:
• Develop and provide methodologies and tools to support the design and maintenance of embedded software.
• Facilitate collaboration by defining software requirements through established processes.
• Guide and support coding guideline for JavaCard secure elements and microcontrollers using best practices.
• Ensure adherence to high standards of code quality and testability.
2. Embedded System Testing:
• Establish comprehensive test plans and methodologies for rigorous validation of embedded systems.
• Promote and implement automated testing frameworks to enhance efficiency.
• Support systematic testing procedures through robust processes and guidelines.
• Provide tools for identifying and resolving software and hardware defects.
3. Documentation:
• Develop standardized documentation methodologies for software design and test plans.
• Support effective documentation and communication of testing results and best practices.
4. Quality Assurance:
• Collaborate with QA to refine processes ensuring system reliability and robustness.
• Provide structured methodologies for code reviews and maintain consistency.
• Promote continuous improvement of testing processes through best practices and tools.
5. Research and Innovation:
• Stay informed about industry trends and new methodologies in embedded system development.
• Lead the development of new testing methodologies and tools to drive innovation and process improvement.
Qualifications
• Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field.
• 3 years proven experience in embedded software development.
• Hands-on experience with secure elements and microcontrollers.
• Good understanding of embedded hardware.
• Expertise in software testing methodologies and tools.
• Knowledge of version control systems (e.g., Git) and issue tracking tools.
• Excellent problem-solving skills and meticulous attention to detail.
• Strong communication and collaboration skills.
• Familiarity with Agile development methodologies is a plus.
Preferred Skills
• Familiarity with microcontroller peripherals.
• Proven experience with automated testing frameworks and continuous integration tools.