Senior Software Engineer
Backend Developer
Electrical Engineering
Senior
API
APIs
Bluetooth
Coap
Communication Protocols
Embedded Linux
Embedded Operating Systems
Embedded Software
Embedded Systems
Firmware Development
Freertos
Hardware Engineering
Hardware Software Co Design
I2c
Jtag
Lwm2m
Protobufs
Software Development
Software Engineer
Software Engineering
Job Description
Bitflip Engineering is seeking a Senior Software Engineer to join our team onsite in Longmont, Colorado. This role offers a salary range of $100,000 to $200,000 per year, a comprehensive benefits package, relocation assistance, and the chance to impact both embedded and server-side software. You will work across RTOS and embedded Linux using C and Go to develop device bring-up, drivers, and back-end integrations, with responsibilities spanning wireless protocols, cloud integration, and cross-platform applications for Android, iOS, Windows, and Linux.
Benefits
- 401(k)
- 401(k) matching
- Dental insurance
- Family leave
- Free parking
- Health insurance
- Paid holidays
- Paid time off
- Relocation assistance
- Snacks provided
- Vision insurance
Responsibilities
- Write clean, high-quality, high-performance, maintainable code in C and Go for embedded systems as well as servers
- Develop and support software including applications, database integration, interfaces, and new functionality enhancements for end-to-end connectivity of embedded devices to back-end servers over wireless connections including 3G/4G/5G, 802.11, 802.15, and proprietary radios and protocols
- Support test and deployment of new products and features
- Participate in code reviews and schematic reviews
- Perform hardware and software device bring-up
- Create device drivers for peripherals such as Bluetooth sensors, flash devices, accelerometers and other peripherals
- Create applications for mobile devices (Android, iOS) as well as Windows and Linux
- Debug and test network data connections and transfers
Requirements
- Bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering, or related field
- 2+ years of relevant work experience in embedded systems
- Ability to multi-task, organize, and prioritize work
- Able to debug hardware and drivers with oscilloscopes, logic analyzers, and other test equipment
- Experience with bare-metal software development, Real Time Operating Systems or Embedded Linux
- Use of JTAG/SWD debuggers
- Understanding of networking and network protocols, and ability to debug open-ended problems with tools such as Wireshark
- Able to work with multiple operating systems comfortably
- Backend development language proficiency using Go, Protobufs, and understanding of microservice architectures
- C programming experience
- Familiarity with basic tools such as Perl, Bash, Make, and related utilities
- 1+ years of work experience with C
- 1+ years of work experience with Embedded Systems
Technologies
- C
- Go
- Protobufs
- Wireshark
- ThreadX
- FreeRTOS
- Embedded Linux
- Android
- iOS
- Windows
- Linux
- USB
- SDIO
- I2C
- JTAG
- SWD
- Bluetooth
- CAN bus
- ARM processors
- ARM assembly
- LWM2M
- COAP
- 3G/4G/5G
- 802.11
- 802.15
- ARM-based processors