Embedded Software Engineer

DELTA DEVELOPMENT TEAM, INC
Tucson, United States of America
7 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Junior
Compensation
$ 120K

Job location

Tucson, United States of America

Tech stack

C
Data analysis
Automation of Tests
Booting (BIOS)
C++
Software Documentation
Software Quality
Code Review
Communications Protocols
Software Debugging
Programming Tools
Device Drivers
Memory Management
Embedded Software
Ethernet
Firmware
FreeRTOS
Github
Hardware Design
Hardware-In-The-Loop Simulation
Joint Test Action (IEEE Standards)
Python
Linux System Administration
Message Queuing Telemetry Transport (MQTT)
Real-Time Operating Systems
Software Engineering
Universal Asynchronous Receiver/Transmitter
Scripting (Bash/Python/Go/Ruby)
Serial Peripheral Interface
PIC Microcontroller
Peripherals
Gitlab
GIT
Information Technology
Bare Metal
Software Version Control
Programming Languages

Job description

  • Design, develop, test, and maintain embedded firmware for microcontroller-based systems.
  • Implement software solutions using both bare-metal and RTOS-based architectures.
  • Develop device drivers and interfaces for peripherals such as SPI, I2C, UART, CAN, USB, ADC, PWM, and GPIO.
  • Participate in firmware architecture, code reviews, and technical design discussions.
  • Debug software and hardware integration issues using oscilloscopes, logic analyzers, JTAG/SWD debuggers, and other development tools.
  • Develop Python scripts and tools for test automation, manufacturing support, data analysis, and development workflows.
  • Create and maintain technical documentation, including software design specifications, test plans, and user documentation.
  • Collaborate with hardware, systems, and test engineers to ensure successful product integration and validation.
  • Support verification, validation, and troubleshooting activities during development and production.

Requirements

We are seeking a motivated Embedded Software Engineer with 1-5 years of professional experience developing firmware for embedded systems. The ideal candidate has hands-on experience with bare-metal programming, RTOS-based applications, and Python scripting for development, testing, and automation. This role involves designing, implementing, debugging, and validating embedded software for microcontroller-based products throughout the product lifecycle., * Bachelor's degree in Electrical Engineering, Software Engineering, Computer Science, or a related technical discipline.

  • 1-5 years of professional experience developing embedded software or firmware.
  • Proficiency in C programming for embedded systems.
  • Experience with Real-Time Operating Systems (RTOS) such as FreeRTOS, Zephyr, or similar. (or familiar with operating system concepts such as critical section, and schedulers)
  • Experience developing bare-metal firmware for microcontroller-based systems.
  • Familiarity with Python for scripting, automation, testing, or data analysis.
  • Understanding of embedded system fundamentals, including:
  • Interrupts and exception handling
  • Timers and scheduling
  • Memory management
  • Communication interfaces and protocols
  • Experience using version control systems such as Git, GitHub or GitLab.
  • Strong analytical, debugging, and problem-solving skills., * Experience with ST microcontrollers.
  • Familiarity with Linux environments (debian-based preferred).
  • Knowledge of communication protocols such as CAN, Ethernet, BLE, or MQTT.
  • Experience developing automated test systems or hardware-in-the-loop (HIL) test environments.
  • Familiarity with bootloaders, firmware update mechanisms, and secure embedded development practices.

Technical Skills Programming Languages

  • C (required)
  • C++ (preferred)
  • Python (required)

Embedded Platforms

  • ST or similar microcontroller architectures
  • Nordic communications modules
  • MCU-based embedded systems

Operating Systems

  • FreeRTOS
  • Zephyr
  • Similar RTOS platforms

Tools

  • Git
  • JTAG/SWD Debuggers
  • Oscilloscopes (preferred)
  • Logic Analyzers (preferred)

Communication Protocols

  • UART
  • SPI
  • I2C
  • CAN
  • USB

Desired Attributes

  • Strong attention to detail and commitment to software quality.
  • Ability to work independently while collaborating effectively across multidisciplinary teams.
  • Eagerness to learn new technologies and expand technical expertise.
  • Excellent written and verbal communication skills.
  • Self-motivated with a proactive approach to problem solving.

Benefits & conditions

Pulled from the full job description

  • Health insurance
  • Retirement plan
  • Paid time off
  • Vision insurance
  • Dental insurance
  • Paid holidays, Salary: DOQ, * Health, dental, and vision insurance
  • Paid time off and company holidays
  • Retirement savings plan
  • Professional development opportunities
  • Flexible work arrangements (where applicable)

Pay: $90,000.00 - $120,000.00 per year

Apply for this position