Job Description: Senior Embedded Network Software Engineer
About goTenna:
goTenna is advancing universal access to connectivity by building the world's most intelligent and scalable mobile mesh networks. goTenna is the world's leading mobile mesh networking company, providing off-grid connectivity solutions for smartphones and other devices, as well as augmenting traditional communications networks. This technology enables mobile, long-range connectivity without cell, wifi, or satellite connectivity. goTenna's drive to create resilient connectivity began during Hurricane Sandy in 2012, when approximately a third of cell towers and power stations in affected areas failed. goTenna's products are currently used by over 300 law enforcement, military, and public safety agencies worldwide. goTenna is backed by investors, including Union Square Ventures, Founders Fund, Lockheed Martin Ventures, Comcast Ventures, MentorTech Ventures, Walden Venture Capital, and ONE9.
About the Role:
goTenna is seeking an engineer to develop software for goTenna mesh networking products. You are responsible for the design, development, testing, and debugging of wireless networking protocols and embedded systems software including device drivers. You also will develop support for new hardware and optimize the performance of current and future products. In addition to working with the Firmware Engineering Lead, you will collaborate on a weekly basis with team members in web and mobile development, wireless networking research, hardware development, and quality assurance.
Primary Responsibilities:
- Code, test, and deliver network stack improvements in C on multiple goTenna products
- Design, implement, and test embedded software modules on microcontroller- and FPGA-based embedded platforms
- Develop unit test plans
- Conduct research and development on new protocols
Required Experience:
- Bachelor’s degree in computer science or relevant work experience
- Minimum 5 years of experience
- Experience programming packet-switched networking protocols
- Expertise with core IEEE and IETF networking protocols and terminology
- Experience selecting, implementing, and testing data structures and algorithms
- Experience writing portable, clear C code following the C99 standard or later
- Experience with software development in UNIX/Linux/macOS using gcc, gdb, ld, make
- Effective use of source control systems, especially git
- Strong debugging skills
- Ability to communicate quickly and effectively with engineers, management, and clients
Preferred Experience:
- Experience in wireless communications or mesh networking
- Experience in real time operating systems (RTOS)
- Experience with TCP/IP network programming in BSD UNIX, Linux, or macOS
- Experience programming for systems with moderate clock speeds, limited RAM and flash storage
- Experience writing and modifying hardware device drivers
- Experience with Xilinx environment (Petalinux)
- Experience with scripting in Bourne (Again) shell or Python
- Experience with high-level languages such as Java, Kotlin, and Swift
- Experience with ARM microcontrollers
- Experience producing project plans and budget estimates
- Experience working in an Agile/SCRUM environment
- Experience working at a startup
goTenna is an equal opportunity employer, and we 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.
ITAR: U.S. Citizen or Green Card Required
Placement at the appropriate job level (entry, senior, etc) will be determined by a combination of years of experience, demonstration of proficiency in this field, and other qualifications.
Able to lift 30 Ibs. goTenna Benefits:
- Equity
- 401(k) plan
- Unlimited PTO
- Parental Leave with Pay
- Holiday pay (including December recess)
- Medical, Dental, Vision, and life insurance
- Pre-tax benefits
- Short- and Long-term disability plans
- Professional Education Stipend