Position: Embedded C Developer
Company: Ajax Systems
Category: C++
Experience required: 3y

**Required skills:**
- Proven experience in developing embedded real-time applications for commercial products
- Excellent knowledge of embedded coding techniques, interfaces (e.g. SPI, I2C, UART) and subsystems
- Strong skills in various build systems
- Excellent knowledge of C programming language
- Experience in debugging and validating complex embedded systems and protocol stack
- Understanding of operating systems: embedded developers usually need experience in programming in embedded Linux or similar embedded operating systems
- Good hands-on experience of software engineering fundamentals such as testing, continuous integration, continuous deployment, pull requests and code reviews, source control, work item/issue tracking

**Would be a plus:**
- Experience with STM processors
- Experience with programming RF modules and development low-energy wireless solutions
- Scripting languages Python, Bash
- Commercial experience with specific real-time operating systems
- Leading of software engineers teams
- Ability to multitask effectively among different projects in a fast-paced environment
- Basic electronics: embedded engineers use oscilloscopes, logic analyzers, and multimeters for debugging
- Experience in commercial IoT projects

**Responsibility zone:**
- Participate in the full embedded software life cycle: design, implementation, code reviews, documentation, testing and validation
- Analysis and systematic problem solving for SW reported issues
- Cooperate with electrical engineers to perform verification of new hardware from a software team perspective. Review and provide feedback on the firmware specific aspects of hardware design
- Delivery highly reliable Malevich OS releases
- Work with high-level and technical requirements for research and development new features
- Participate in making design decision to develop high performance and reliable embedded systems
- Create unit and functional tests
- Be ready to mentoring of newcomers|trainee coworkers
- Be ready to lead a team of software engineers to achieve goals and challenges

**With us you will enjoy:**
- Working with a team of people to build the future of an industry
- Non-trivial challenges and various spectra of interesting tasks
- A flexible, friendly and collaborative work environment
- Corporate culture based on common sense