Senior Embedded Software/Firmware Engineer
Synapse is hiring creative software engineers who have a passion for great products and technology, and want to use that passion to develop innovative products in an incredibly fun, fast-paced, and highly collaborative team environment. This senior position is part of the embedded software group. You will be an active part of multi-disciplinary teams and will lead the design and development of firmware for custom, leading-edge hardware products. Working with electrical and mechanical engineers, project managers, and client teams, you will have an identifiable impact on the success of projects and end products.
A passion for quality software and experience with writing code from high-level embedded applications down to register-level device drivers are essential, and good client interaction skills, leadership ability, and an egoless approach to teamwork are highly valued.
Major Job Functions:
- Design and implement software for execution on custom embedded platforms, including drivers and board support packages
- Participate in system architecture design, including RTOS and μC/μP tradeoff decisions
- Write software unit tests to exercise your code
- Lead and participate in design reviews and code reviews
- Work with project managers in Agile/Scrum settings
- Participate in functional test planning
- Work with clients to define requirements, develop software architecture, provide status updates, and plan sprints
- Work independently on small projects and lead small teams (2–7 engineers) on larger projects
- Participate in brainstorms outside your area of expertise
- Contribute expertise to and learn from the larger software group
- 8+ years of software development experience, with 4+ years of experience with embedded firmware engineering
- 4 year degree in computer science or electrical engineering, or equivalent experience
- Strong C and C++ programming skills.
- Expertise in development and debugging on small, low-power embedded platforms (e.g. ARM Cortex-M, MSP430)
- Experience with bare metal programming and one or more RTOSs (e.g. FreeRTOS, uC/OS)
- Experience with custom board bring-up
- Expertise with common embedded toolchains (e.g. GCC, Keil, IAR, CCS) and version control systems (e.g. git)
- Excellent written and spoken communication skills
- Solid understanding and experience in software engineering methodologies and best practices
- Ability to read electrical circuit schematics and understand impact on software operation and design
- Experience in wireless technologies (e.g Bluetooth, WiFi, etc.) and serial communications protocols
- Experience with embedded Linux, Android, and software architecture for applications-class processor systems (e.g. SnapDragon, Tegra)
- Experience with bare metal development on small 8- and 16-bit microprocessors (e.g. MSP430, 8051)
We are an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.
Meet Some of Synapse's Employees
Vice President, Engineering
Leading the company's engineering efforts, Jeff works with clients to transform their napkin sketch concepts into designs, prototypes, and mass-produced products.
Back to top