With offices in Berkeley and downtown San Francisco, Adura Technology Group is looking for a senior embedded software engineer developer. The role offers a great opportunity to create next-generation, energy efficient, intelligent wireless lighting control systems aimed at the building energy efficiency market. This is a senior level role where the candidate will not only work within the processes used by the company, but will also help define new processes and architecture.
· The Senior Firmware Engineer will be responsible for designing, developing, and testing application-level firmware, using C in a 32bit ARM processor environment.
· Design and develop device drivers, state machine algorithms for embedded hardware chip interfaces used in lighting control applications
· Write unit and black box tests for new features and regression testing in our automated testing framework
· Analyze system requirements and review component specifications, including performing all appropriate trade-off analysis on design decisions
· Practice and promote the Agile software development methodology. Review and improve processes used in engineering.
· Develop prototypes and prove out concepts. Develop benchmarking tools to ensure high performance is being achieved and maintained.
· Keep up with emerging technologies and recommend relevant technologies during design events.
· Guide and mentor team-members on design, debugging, coding and testing standards.
· Provide project management. Lead projects from start to finish with minimal supervision.
· 5+ years of embedded development experience on high-reliability volume products, plus the education listed below.
· Expert in embedded C, strong knowledge of C++.
· Expert knowledge of networked (preferably wireless) distributed systems development
· Expert knowledge of software API designs for extensibility and ease of testing · Experience across a range of embedded platforms from deeply embedded (16/32-bit, limited memory, no RTOS) to embedded Linux-based platforms
· Experience utilizing agile or other iterative development methodologies for embedded system firmware development, including Continuous Integration (CI) and Test Driven Development (TDD) processes
· Exceptional organizational skills. Willing to roll up his/her sleeves and get things done. Ability to complete challenging assignments in a timely manner.
· Strong written and oral communication skills.
· Team player. Works well with others.
· Hunger to learn new things and contribute.
Preferred Experience and Knowledge:
· Demonstrated skills in improving and creating development processes/tools in a startup environment
· Experience with interpreted languages (Ruby, Python, etc)
Bachelor’s Degree – Electrical Engineering, Computer Science, Computer Engineering or equivalent. MS and/or PhD a plus.
- 16 months ago - save job