Embedded Software Developer
Job Description
Job Title: Embedded Software Developer
Location: [East Peoria, IL
Employment Type: Full-Time, Hybrid (Off-site work with mandatory on-site hardware engagement)
About Us:
DMV IT Service LLC is a trusted IT consulting firm founded in 2020. We specialize in optimizing IT infrastructure, providing expert guidance, and supporting workforce needs with top-tier staffing services. Our services span system administration, cybersecurity, networking, and IT operations. With a client-first approach, we ensure long-term success for our clients through innovative solutions and industry best practices.
Job Purpose:
The Embedded Software Engineer will be responsible for researching, designing, developing, building, and testing low-layer software that interfaces with a variety of electronic control units (ECU/ECMs). This role focuses on OS integration, I/O drivers, and boot processes, contributing to the development of cutting-edge technology for our clients.
- Develop and implement new software features and processes from concept to deployment.
- Analyze and decompose software requirements for embedded systems.
- Evaluate new languages, development tools, and processes to improve software capabilities.
- Perform product maintenance and manage the software lifecycle using version control and configuration management.
- Hardware Interface Development:
- Design and develop embedded electronics controls, display, or telematics software.
- Develop device drivers, I/O drivers, and manage SPI/I2C peripheral interfacing.
- Work with hardware diagnostics, real-time operating system integration, and non-volatile memory interfacing.
- Handle board initialization and chip-level interfacing with ECU/ECM hardware.
- Testing & Debugging:
- Perform unit testing, regression testing, and ensure the software meets client requirements.
- Troubleshoot and debug issues using tools like oscilloscopes.
- Support hardware development by providing technical insights related to embedded systems.
- Collaboration & Communication:
- Collaborate with peers, tech leads, and stakeholders to design and implement solutions.
- Communicate technical information to customers, team members, and suppliers.
- Provide guidance to other engineers, marketing personnel, and external partners.
- Continuous Learning & Innovation:
- Stay updated on new technologies and continuously improve existing technologies.
- Advise on the use of new languages, tools, and techniques to enhance product development.
Qualifications:
Technical Skills:
- Embedded Software Experience:
- Real-world, real-time embedded device driver experience is a key requirement.
- Proficiency in designing and developing control software, device drivers, I/O drivers, and hardware diagnostics.
- Experience with SPI/I2C peripheral interfacing, real-time OS integration/configuration, and chip-level interfacing with ECU/ECMs.
- Programming & Tools:
- Proficiency in C, Python, Bash shell for embedded development.
- Familiarity with software development processes such as Agile.
- Strong experience with Git for version management (Clearcase experience is a plus).
- Testing & Debugging:
- Experience with debugging tools like oscilloscopes.
- Strong knowledge of software design patterns, debugging, and troubleshooting.
Soft Skills:
- Communication:
- Excellent verbal and written communication skills.
- Strong problem-solving, customer service, and interpersonal skills.
- Ability to clearly communicate technical solutions to both technical and non-technical stakeholders.
- Analytical Skills:
- Ability to read schematics and data sheets for components.
- Strong troubleshooting skills to identify issues and implement necessary system changes.
Education & Experience:
- Minimum Education:
- Bachelor’s degree in Computer Engineering, Electrical Engineering, or a related field. (Computer Science or similar degrees with relevant experience may be considered).
- Experience:
- 5-8 years of industry experience in embedded software development.
- Master's degree or equivalent internship/project experience may be accepted towards the minimum experience requirement.
Company Information
Location: Not specified
Type: Not specified