The Staff Software Engineer will be participating in software design and implementation of new and existing capital and connected systems.
• Design and develop software of embedded devices and systems from requirements to production.
• Assisting with the development, documentation of architectures, requirements, algorithms, interfaces and designs for software systems
• Reviewing the software design and code
• Train and mentor joiner software engineers.
• Adhere to quality system and environmental policies and procedures and supports department compliance objectives
• A Bachelor’s degree in Computer Science, EE or other relevant technical experience is required. Advanced degree is preferred
• A minimum of 8 years of practical work experience in software engineering.
• Solid programming experience in C/C++ and Object-Oriented Programming
• Proven experience in embedded systems design with preemptive, multitasking real-time operating systems (RTOS)
• Hands on experience in Qt is a plus.
• Experience in x86 or ARM microprocessors or PIC microcontroller.
• Experience in hardware and software integration (development, testing and debugging)
• Experience in Agile / Lean software development process and tool sets is required