Job Title: Embedded Systems Engineer
Job Summary: We are seeking a talented Embedded Systems Engineer to design, develop, test, and maintain embedded software and hardware solutions for electronic devices and real-time systems. The ideal candidate will have experience working with microcontrollers, embedded operating systems, device drivers, and communication protocols. This role involves collaborating with hardware, firmware, software, and product teams to deliver reliable, high-performance embedded products.
Key Responsibilities: - Design, develop, and maintain embedded software for microcontrollers and embedded platforms.
- Develop firmware, device drivers, and low-level software components.
- Collaborate with hardware engineers during board bring-up and hardware integration activities.
- Implement and optimize real-time systems and performance-critical applications.
- Develop and execute unit tests, integration tests, and system validation procedures.
- Troubleshoot and resolve hardware-software integration issues.
- Analyze system requirements and translate them into technical specifications.
- Optimize memory usage, power consumption, and processing efficiency.
- Support product development from prototype through production release.
- Participate in code reviews and ensure adherence to coding standards and best practices.
- Maintain technical documentation and design specifications.
Required Skills: - Strong understanding of Embedded Systems architecture and design principles.
- Experience with real-time and resource-constrained systems.
- Knowledge of microcontrollers, processors, and hardware interfaces.
- Strong debugging and problem-solving skills.
- Understanding of electronics fundamentals and circuit concepts.
- Ability to work closely with cross-functional engineering teams.
Technical Skills: - Programming Languages: C, C++, Embedded C, Python
- Microcontrollers: ARM Cortex, STM32, PIC, AVR, ESP32
- Embedded Operating Systems: FreeRTOS, Embedded Linux, VxWorks, Zephyr
- Communication Protocols: UART, SPI, I2C, CAN, USB, Ethernet
- Development Tools: Keil, IAR Embedded Workbench, MPLAB, STM32CubeIDE
- Debugging Tools: JTAG, GDB, Logic Analyzers, Oscilloscopes
- Version Control: Git, GitHub, GitLab, Bitbucket
- Hardware Interfaces: GPIO, Client, DAC, PWM
- Build Systems: Makefiles, CMake
Qualifications: - Bachelor's degree in Electronics Engineering, Electrical Engineering, Computer Engineering, Embedded Systems, or a related field.
- Master's degree is a plus.
- Relevant certifications in Embedded Systems or IoT technologies are preferred.
Experience: - 3-8 years of experience in Embedded Systems Development.
- Hands-on experience with microcontroller-based product development.
- Experience developing firmware for consumer electronics, automotive, industrial, healthcare, or IoT devices.
- Familiarity with software development lifecycle and Agile methodologies.
Preferred Qualifications: - Experience with Embedded Linux development and kernel customization.
- Knowledge of IoT platforms and edge computing solutions.
- Experience with wireless technologies such as Bluetooth, Wi-Fi, Zigbee, LoRaWAN, or NFC.
- Understanding of functional safety standards such as ISO 26262 or IEC 61508.
- Experience with hardware design validation and manufacturing support.
Preferred Qualities: - Strong analytical and troubleshooting skills.
- Attention to detail and commitment to quality.
- Ability to work independently and in multidisciplinary teams.
- Excellent communication and documentation skills.
- Passion for innovation in embedded and connected systems.
Employment Type: Full-Time
Location: Remote / Hybrid / On-site
Nice to Have: - Experience with IoT device development and cloud integration.
- Knowledge of Automotive Embedded Systems (AUTOSAR, CAN, LIN).
- Experience with FPGA, DSP, or ASIC-related development.
- Familiarity with cybersecurity principles for embedded devices.
- Experience developing smart devices, robotics systems, medical devices, industrial automation products, or consumer electronics.