Software Engineer (Mid-Level)
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+16 more
Job description
- Develop, integrate, and maintain firmware within the Avionics group.
- Design and develop communication interfaces such as UART, SPI, I2C, USB, RS232, RS485, Ethernet, or similar protocols.
- Design and implement solutions using ADCs, DACs, interrupts, DMA, timers, digital potentiometers, and GPIO.
- Collaborate with hardware engineers to bring up new boards, debug hardware and software interactions, and develop device drivers.
- Participate in software architecture design activities and code reviews.
- Develop hardware-in-the-loop (HIL) systems and integrate them with simulation environments.
- Contribute to system-level documentation, including ICDs, design artifacts, test reports, and operational procedures.
- Contribute to system verification and validation activities.
- Troubleshoot and resolve issues related to performance, memory, timing, and reliability.
- Communicate project progress, status, and potential risks clearly to stakeholders and leadership.
- Implement and maintain agile project management practices throughout the project lifecycle, adapting to changing requirements and priorities.
- Perform additional job duties as assigned in support of cross-functional initiatives and overall program success.
Requirements
- Ability to complete a pre-employment background check and drug screening, which will include but is not limited to testing for marijuana use.
- 5 or more years of experience with embedded systems, firmware, and/or driver development.
- Experience developing communication interfaces such as UART, SPI, I2C, USB, RS232, RS485, Ethernet, or similar protocols.
- Experience designing with ADCs, DACs, interrupts, DMA, timers, digital potentiometers, and GPIO.
- Experience with hardware bring-up, embedded debugging tools (e.g., JTAG, oscilloscopes, logic analyzers), and embedded toolchains.
- Strong understanding of real-time constraints, deterministic execution, and safe, reliable embedded design principles.
- Strong proficiency in C/C++ and Python, with familiarity with modern embedded development practices.
- Experience applying software and firmware security best practices.
- Experience using version control systems such as Git and GitLab within continuous integration pipelines.
- Proficiency in software testing methodologies.
- Demonstrated ability to solve complex problems proactively using sound judgment.
- Strong organizational skills with the ability to meet tight deadlines while delivering high-quality results.
- Demonstrated success delivering results in ambiguous, fast-moving environments.
- Ability to present complex technical topics to management and other stakeholders.
- Bachelor’s degree (or higher) in Computer Engineering, Electrical Engineering, Aerospace Engineering, Computer Science, or a related technical discipline.
Desired Skills, Experience, and Education:
- Exposure to software development in Linux environments.
About the company
Cimarron is a global solutions company with a strategic partnering approach to satisfying customer-driven requirements. We ensure customer success with a modern approach and experienced leadership. Driven by an entrepreneurial spirit, Cimarron is fueled by highly skilled employees, developing new innovative technologies, and delivering superior products and services. We believe in recognizing employees’ worth by offering competitive salaries and benefits, including health, dental, and vision insurance, 401(k) contributions, educational reimbursement, and much more. From company communication through Company-wide information meetings led by our President and CEO, to an Awards program designed to recognize our amazing employees and their accomplishments, you will not only feel like you are a part of a team, you will be a valued member of the Cimarron family. Cimarron is an Equal Opportunity Employer. All qualified applicants will receive consideration for employment without
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Apply on dice.comGood distractions
Talks and stories from around this role — technically off-topic, practically not.
Moments
Explore playlistsVideos
See allRelated articles
See all
Is Software Engineering Hard?
Quick guide: How to write a Software Developer CV
7 Important Tips That Every Software Developer Should Know
Is Software Engineering Over-Saturated?