Key Responsibilities:
- Participate in product definition, specification and requirements analysis working with cross-functional stakeholders
- Collaboration on firmware architecture and development strategy with a particular focus on wired and wireless networks
- Design, code, integrate, test, support and enhance software solutions for embedded microprocessors used in wired and wireless communication devices, switching power supplies, sensors, and gateways
- Clearly communicate design constraints and trade-offs to other team members and management, playing an advisory role as a subject matter expert to ensure that optimal design decisions are made
- Perform system integration and validation testing activities, including verification of interoperability within an overall solution
- Assist with evaluating existing and emerging technologies to identify solutions that will reliably operate in a wide range of installed environments
- Architecting, developing, integrating and delivering embedded and PC software in a regulated product development process
- Participating in all project lifecycle phases – from design and code development through unit testing, documentation, and release
- Working with a broad team to translate customer requirements into the best possible solution within a resource, time, and technical constraints
- Other duties may be assigned
Key Qualifications and Skills:
- Bachelor’s or Master’s degree in Computer Science, Computer Engineering, Electrical Engineering or a related field
- 10-15 years of related work experience
- Proficient in C Programming
- Must have experience in designing code frameworks (kernels, schedulers), drivers and legacy codes for 8bit, 16bit, 32bit micro-controllers and DSPs (Microchip, TI, ST, Freescale, etc)
- Must have experience with communication protocols such as I2C, SPI, RS-485, Ethernet, etc.
- Must have experience interacting with software debugging in an embedded and electronics environment
- Must have experience in PC Application programming such as Python, .NET, VBA is a plus
- Must have experience in creating state machines, flow charts, etc.
- Comfortable using oscilloscopes, multi-meters, power supplies, etc.
- Capable of reading hardware schematics and data sheets
- Experience with software development life cycles such as Agile, Scrum, and CMMI
- Familiarity with version control systems (SVN), and release methodologies
- Familiarity with MISRA or other coding standards is a plus
- Disciplined and detail-oriented; experience delivering robust, readable code
- Excellent communication skills, both verbal and written
- Excellent analytical and problem-solving skills
- Experience in recreating sporadic types of issues/failures using various debugging techniques
- Experience working in a fast-paced, growing organization with the ability to balance multiple priorities and objectives simultaneously
Send your CV to careers@weave-solutions.com and we’ll reach out to you.