Experience in team leading
Strong in C and code quality
Good in C++
Experience in development of OS-less (bare metal) and RTOS-based solutions
Knowledge of widely used platforms (ST, SiLabs, NXP, TI), interfaces and protocols (UART, I2C, SPI, ModBus, CAN, USB, Ethernet, etc.)
Knowledge and practical experience in RTOS usage and IPC approaches
Experience in debugging and troubleshooting solutions for embedded systems. It should include software debugging on real HW and debugging of HW issues
Linux User Space development experience
Knowledge of commonly used libraries (HALs, file system (FatFS, LittleFS), networking (lwIP or similar))
At least Intermediate level of English
— Experience in Embedded Linux (including developing drivers for Linux Kernel)
— Experience in networking: TCP, UDP, MQTT, TLS
— Experience in Bluetooth, ZigBee, WiFi, etc.
— Good background in digital and analogue electronics
— Knowledge of standards/guidelines for safety improvements (MISRA C/C++, ISO26262, etc.)
— Take responsibility for the delivery of product features
— Regular communication with the Architects on a Customer side; accurate transformation of requirements into a set of tasks for the team
— Identify and resolve technical issues, take part in support activities
— Document software development process: the creation of architecture and low-level design documents; revision of documents for compliance with company policies and customer requirements under the Architect’s supervision
— Software development process: development of architecture, modules, sub-systems, functions (sets of functions), classes (sets of classes), libraries, and databases in keeping with the quality standards applicable in the company
— Organization of team performance to ensure maximum efficiency of development in compliance with company policies and customer requirements; regular peer code and design reviews
— Performing control of software testing: unit and integration testing of own code and code written by other software engineers; organization of testing in the team in keeping with company policies
— Carry out professional supervision of software development staff
— Promote good design principles such as code reuse, modularity, and extensibility and mentor others in these principles
— Perform code reviews for compliance with best engineering practices, coding standards, and quality criteria set forth on the project
— Continuously participate in technical risks identification and analysis, immediately notify the Project Manager of new risks identified, suggest the mitigation strategy
— Participate in estimation and planning sessions
— Participate in conference calls and face-to-face meetings with the Customer and Customer partners
— Report status and progress according to the project and company demands
— Spot current deficiencies in the development process, adopted procedures, and engineering practices, environment configurations, etc., and suggest improvements
Devices and machines get smarter day by day and find their way to all spheres of life and businesses of any size. Developing embedded software, which controls operation of such devices and machines, requires knowledge of hardware, specific skills, and ability to work under limited time and memory.
We are searching for an experienced Embedded Engineer to extend the team for our existing customers in automotive, smart city, and enterprise heat project areas.
If you have a strong analytical mindset, you are passionate about both hardware and software, and would like to work with the skillful team of professionals, then welcome to our department.
We are hiring for 3 projects with various needs and specifics:
1. We are developing world-class solutions in sustainable energy that help achieve the best concept for any type of property, whether it is an apartment block, an industrial building, a hotel, or a country house.
2. We are improving automotive braking systems.
3. We are working on a brand new smart city solution.
We are working with bare metal solutions and with Linux, or OS less solutions and covering big range of enterprise level technologies.
Technology Stack: C, CAN, FreeRTOS, Cortex M0, SPI, I2C, MQTT, RS485, MODBUS/ZigBee.