Design, develop and test embedded software for new Programmable Logic Controllers (PLC)
Implement PLC core functionalities to new platforms and implement PLC features
Become a member of an agile team leveraging the Scaled Agile Framework
Work in a variety of hardware and software environments
Use Jenkins for continuous integration, GitLab for SCM, CMake build system and Jira for issue tracking
Develop automated tests, expanding and improving automated test coverage
Analyze and optimize software performance and memory usage
Work in an environment with a strong focus on code quality and reliability
Leverage all aspects of well-set quality processes, including design and code review, to deliver high quality product
Provide constructive feedback and guidance to junior engineers
Requirements
Our Requirements:
Bachelor’s degree in Electrical Engineering or Computer Engineering or equivalent knowledge in the application of software engineering principles, theories, concepts, and techniques
Knowledge of C++ and Python
Ability to design and implement software architecture for embedded systems, considering factors such as performance and and memory constraints
4 + experience with software development
Fluent in English
Nice to have:
Embedded software development for an RTOS or Linux
Debugging software systems using either an on-chip debugger, or a software-based debugger such as GDB
Knowledge of industrial protocols, especially Common Industrial Protocol (CIP)
Developing device drivers or other similar low-level embedded software