Intetics Inc., a global technology company providing custom software application development, distributed professional teams, software product quality assessment, and "all-things-digital" solutions, is seeking a highly skilled and experienced
Middle/Senior Embedded Engineer
to join our dynamic team on a full-time basis.
Responsibilities
-
Design, develop, and maintain embedded firmware according to product requirements
-
Implement new features and enhancements using C and C++
-
Contribute to firmware architecture and system-level design decisions
-
Participate in requirements analysis, feasibility studies, and technical risk assessments
-
Develop firmware for ARM Cortex-M microcontroller-based systems
-
Work with both Bare-Metal and FreeRTOS environments
-
Design and implement low-level drivers and hardware abstraction layers
-
Integrate and maintain communication interfaces and protocols, including UART, SPI, and I2C
-
Debug and validate embedded systems using development software and laboratory tools
-
Review, optimize, maintain, and extend existing firmware codebases
-
Support hardware development activities, including schematic and PCB reviews
-
Identify and define hardware requirements based on firmware and system needs
-
Prepare and maintain technical documentation using Doxygen, Confluence, or similar tools
-
Participate in code reviews and technical discussions
-
Collaborate closely with distributed firmware, hardware, architecture, and project teams
-
Deliver technical tasks and project milestones within agreed timelines
Requirements
Must-haves
Embedded Firmware Development
-
3-5+ years of hands-on experience in embedded firmware development for microcontroller-based systems
-
Strong programming skills in C
-
Strong commercial experience with C++ and object-oriented programming
-
Commercial experience developing firmware for ARM Cortex-M microcontrollers, including M0, M0+, M3, M4, or M7
-
Hands-on experience with FreeRTOS or similar real-time operating systems
-
Experience with Bare-Metal embedded development
-
Experience designing and implementing low-level drivers and hardware abstraction layers
-
Ability to understand, maintain, optimize, and extend large or mature firmware codebases
Hardware and Electronics
-
Strong understanding of embedded electronic systems
-
Good understanding of electronics and hardware-software integration
-
Ability to read and analyze analog, digital, and power-electronics schematics
-
Experience identifying hardware requirements based on firmware and system needs
Communication Interfaces
-
Practical experience with UART, SPI, and I2C communication protocols
Architecture and Debugging
-
Experience debugging and troubleshooting embedded systems using development and laboratory tools
-
Understanding of embedded system architecture and system-level design principles
-
Ability to contribute to firmware architecture and technical design decisions
-
Ability to use block diagrams, conceptual designs, pseudocode, and other system-design techniques
-
Strong analytical and technical problem-solving skills
Development Tools and Processes
-
Experience with Git-based version control
-
Experience with Jira or similar issue-tracking systems
-
Experience preparing technical documentation using Doxygen, Confluence, or similar tools
-
Familiarity with code review practices and structured development workflows
Nice-to-have
-
Experience making firmware architecture and system-level design decisions
-
Experience with safety-critical, industrial, IoT, certified, or regulated electronic products
-
Good knowledge of PCB design principles for EMC compliance and EMI reduction
-
Experience with Ethernet, Wi-Fi, and network-connected embedded devices
-
Familiarity with cloud services and IoT architectures
-
Understanding of cybersecurity principles for embedded and connected products
-
Experience with Linux-based embedded systems or Linux kernel development
-
Experience with UML or other system-modelling methodologies
-
Familiarity with fire detection, emergency lighting, or central battery system applications