Job Description Summary
Role Summary/Purpose
As a Firmware Developer, you will have the opportunity to directly contribute to the Critical Infrastructure Communication (CIC) product line. You will work in an Agile scrum environment, working with your colleagues on the development and product management teams. You will be responsible for creating embedded and application software for product releases.
Job Description
Essential Responsibilities
- Design and implement firmware of embedded devices and systems from requirements to production release, through to post release support
- Design, code, test and debug embedded firmware across a range of micro-control architectures, from simple 16 bit standalone, through to complex multi-processor solutions.
- Work collaboratively with the hardware designers to optimize software / hardware partitioning.
- Assist in bridging the gap between remote firmware development and localized testing and debug.
- Contribute to the hardware and firmware roadmap, to achieve convergence of a complex product portfolio, to a cost optimized platform solution
Want more jobs like this?
Get jobs in Hyderabad, India delivered to your inbox every week.
Qualifications/Requirements
- Bachelor's Degree in an Engineering or Computer Science discipline or equivalent.
- Preferably 4+ years of experience as a firmware developer.
- Proven working experience in real time, embedded software engineering.
- Demonstrated experience defining and implementing complex firmware / hardware architectures.
- Solid programming experience in C or C++, familiarity with software configuration management tools, defect tracking tools, and peer review.
- Experience with TI DSP, FPGA's and ARM architectures.
- Experience in JavaScript, HTML
- Demonstrated ability to get complex projects across the line, to budget and quality targets
- Ability to work independently and be self-motivated.
- Understanding and practical application of System Design and System Architecture; i.e. hardware / software portioning, hardware abstraction etc.
Desired Characteristics
- Understanding of RTOS concepts, from simple round robin to layered pre-emptive.
- Ability to understand and minimally modify assembler.
- Experience of Embedded Linux implementations and environments.
- Experience of industrial communication protocols (eg. MODBUS, TCP, DNP3, IEC61850, CAN)
- Experience of modern programming languages (for example C#)
- Strong communications skills, with a proven ability to work successfully within a geographically distributed team.
- Ability to demonstrate delivery to time, quality and budget within an Agile programming environment.
- Experience in secure code development - cyber security
- Experience of reading schematics and data sheets to assist in software / hardware debug
Additional Information
Relocation Assistance Provided: Yes