KeyMe is reinventing the $12 billion locksmith services industry with advanced robotics and AI, building the world’s most trusted brand in “access solutions”. Our network of self-service kiosks are located in thousands of retail locations across the country (IKEA, Bed Bath & Beyond, Albertsons, Kroger, RiteAid, Menards, etc.) supporting duplication of brass keys as well as sophisticated electronic keys such as RFID and vehicle transponder keys. Our kiosks are complemented by KeyMe locksmiths who provide unrivaled service quality for emergency lockouts and other skilled access and home services.
KeyMe is growing rapidly and has raised over $100M from top-tier investors like BlackRock, Comcast Ventures, and Battery Ventures.
About the Role
KeyMe sits at the intersection of machine learning, computer vision, software, and mechanical design. Our self-service kiosks scan and duplicate thousands of keys per day, and are effectively an autonomous self-calibrating machine shop in a box.
The control systems team is looking to add a mid-senior level Software Engineer to our group. Reporting to the Director of Control Systems Engineering this qualified Individual will help to assist in building systems to scale out our fleet of robotic key copying kiosks as we expand our operations throughout the US. We are responsible for a broad range of KeyMe’s technology development such as our core libraries, backend integration software, peripheral device management, and robotics control software.
As a member of our team, you would be exposed to one of the most “full stack” engineering teams anywhere, from writing high level software in modern functional languages (i.e. Haskell), to writing peripheral control firmware in C, to system level design from the PCB level on up, we offer an extremely broad range of engineering activities that ensure you’ll never be bored in your career.
What You'll Be Doing:
- Developing core systems software with an eye for scale and usability
- Assisting in the maintenance of our existing systems (Python/C/Haskell)
- Assisting in the design and maintenance of our core system software and libraries
- Integrating existing solutions into our ecosystem
How We Know You Can Do It:
- 4-6 years professional software design experience
- Strong understanding of Python3
- A desire to work with high level functional languages (Haskell)
- Experience with DVCS systems (Git/Mercurial)
- Professional experience working in a Linux environment
- Experience with at least 1 functional programming language (Haskell / OCaml / Scala / Erlang / Elixir / Clojure). We use haskell, but the transition will be easier if you’re familiar with FP concepts
- Solid understanding of the C language
- Experience with
- Microservice architectures
- A message passing / queueing technology (RabbitMQ / MQTT / Redis)
- The Linux networking stack
- Experience with USB devices on Linux
- Mechatronics / Robotics experience
- Health, dental, and vision insurance
- 401K plan
- Stock options
- Flexible Spending Account (FSA)
- Health Savings Account (HSA)
- Commuter Benefits
- Snacks and drinks in the office
- Paid Time Off
- Casual dress