Embedded Software Engineer
Trigo
Software Engineering
Israel
Posted on Wednesday, November 16, 2022
The position:
We are looking for a talented and creative Embedded Engineer to join us. This is a fantastic opportunity to join our excellent team early on and grow with the company. If you’re dedicated, friendly, appreciate challenges, and looking for something beyond the ordinary – Then your place is with us!
A day in the life:
- Designing, implementing, and debugging of real-time firmware for embedded sensing and communications systems (cameras, weight sensors, RFID, etc)
- Learning the different aspects of our products by developing features in various areas and disciplines - power electronics, control theory, DSP, signal processing and communication over different platforms
- Key partner in the design and development of the system architecture, from the perspective of hardware interfaces, sensing components, communication protocols, software and hardware connectivity, etc.
- Developing on various microcontrollers and dealing with various RT constraints
- Ownership of a project\product from end to end- from concept and simulation, through development and integration and field deployment
You bring to the table:
- B.Sc. in Electrical Engineering or Computer Science/Computer Engineering or equivalent professional experience
- Proficiency in programming in C/ C++/ Rust
- AT least 4 years of experience developing real-time multi-threaded applications on Embedded systems
- Experience in low-level programming (HW drivers, SW infrastructures etc.)
- Experience in the design and development processes of multi-disciplinary products which integrate software and electronics (mechanics: advantage)
- Knowledge of various protocols to interface different peripherals: I2C, SPI, USB, RS-485, UART etc
- Familiarity with modern DevOps stack & standards (git, automations)
- Fast learner and independent with excellent debugging skills in a variety of environments
- Good understanding of communication systems, hardware and digital design
- Can take a task and "deliver”, be independent, creative, and take initiative
- Enthusiastic about algorithmic and software problems
- Have a deep understanding of strong Computer Science fundamentals: object-oriented design, code optimization, complexity
- Excellent verbal and written communication skills in English
Nice to have:
- Experience with Python
- Experience with Linux environment
- Experience with network protocols such as Wi-Fi and TCP/IP
- Experience with signal processing, state estimation, control
- Experience with control\power electronics
- Understanding of microservice architecture
- Experience with event-based and message-driven distributed system
- Experience with Docker / Kubernetes environment