OverviewVerkada is looking for software engineering interns to join our team for an exciting and challenging internship. We are seeking interns who will thrive in a startup culture working alongside teammates to launch products that will be utilized by customers across the globe. As part of the Software Engineering team, you'll have ownership of one or more projects on various product or platform facing teams. You will work across the full software stack and collaborate cross functionally to build the latest iterations of Verkada's flagship software, enabling our best-in-class security systems.Learn more about Verkada from one of our interns - Gary Ye from University of Waterloo!Responsibilities:Design, develop, test, deploy, maintain, and improve the embedded and server-side software for our fleet of devicesEffectively manage priorities, deadlines, and deliverables on all projects.Work cross-functionally with the hardware team to develop features in C, C++, Go and Python to build the embedded software and firmware that goes onto the devices we ship to our customersDesign, develop and verify embedded software, firmware and drivers for our systemsWork with new technologies that are critical to product developmentWork with product management and cross functional teams to build and ship features that delight users and customers.Experiment/test with new development boardsMake regular contributions to existing code base to push new features OTA on a frequent basisCollaborate with senior engineers to define new specs for future productsRequirements:Ability to work in person at Verkada HQBS/MS in Computer Science or similar technical field of studyInternship experience developing and launching productsWork experience with Embedded Linux, C, USB, I2C, and YoctoAbility to interview in C or C++Familiar with Linux servers, Linux device drivers, Linux kernel patches, secure operating systems and security focused programmingComfortable working in an agile team software development environment