Software Engineer, Embedded Systems - University Graduate 2022
Who We Are
Verkada is the leading physical security platform to protect people, assets and privacy. Designed with simplicity in mind, Verkada’s five product lines - video security cameras, access control, environmental sensors, alarms and visitor management - provide seamless visibility through an integrated secure cloud-based software platform. Over 9,700+ organizations worldwide trust Verkada as their physical security layer for easier management, frictionless scalability and cutting-edge innovation.
We're focused on hiring embedded software engineers that understand not only the lower-level systems, but also how everything integrates together from the hardware to the UI. You’ll be working closely on one side with our hardware vendors and ME/EE people, and on the other side with server and UI engineers, industrial designers, and our operations team. If you’re looking for a fast-paced environment where your work is regularly shipping to customers and improving people’s safety, this is the place for you!
Responsibilities
- Design, develop, test, deploy, maintain, and improve the embedded and server-side software for our fleet of devices.
- Effectively manage priorities, deadlines, and deliverables on all projects.
- Work cross-functionally with the hardware team to develop features in C, Go and Python to build the embedded software and firmware that goes onto the devices we ship to our customers: Cameras, Verkada Access Control units, Verkada Card / BLE readers, and future devices we will soon be launching.
- Design, develop and verify embedded software, firmware and drivers for our systems.
- Work with new technologies that are critical to product development.
- Work with product management and cross functional teams to build and ship features that delight users and customers.
- Experiment/test with new development boards.
- Make regular contributions to existing code base to push new features OTA on a frequent basis.
- Collaborate with senior engineers to define new specs for future products.
Requirements
- BS/MS in Computer Science, something similar or equivalent work experience.
- 2+ internships in software engineering.
- Mastery of at least one practical programming language.
- Experience working in an agile team software development environment.
- Work experience with: C, USB, I2C, Yocto, etc.
- Familiar with Linux servers, Linux device drivers, Linux kernel patches, secure operating systems and security focused programming.
Verkada is an equal opportunity employer. We strive to be a welcoming place for everyone, and we do our best to make sure all people feel supported and connected at work. A big part of that effort is support for members and allies of our internal communities like Women at Verkada, Pride at Verkada, Multicultural at Verkada and Parents at Verkada.