If you know someone who fits this opportunity description, you can share this opportunity with this link: https://bit.ly/3uLT6kH
We are building the future of computer vision. Our core focus is on developing an end-to-end platform that can digitize the physical world to solve business problems. Today, our visual intelligence platform uses AI-enabled cameras to analyze human body posture in real-time — without streaming any video to the cloud. Coming from the world of self-driving cars, the founders have years of experience in building and deploying large-scale machine learning pipelines.
As a staff software engineer on our team, you will be working with cutting-edge technologies to deploy real-time computer vision solutions on embedded devices. In addition to pushing the boundaries of existing our embedded camera platform, you will be working on everything from developing optimized C++ applications to best practices for robust production grade SW deployment in the wild. You will be working with a world-class team of engineers to deploy a new wave of AI products that work out-of-the-box across domains without weeks or months of data collection.
Recent projects for this role include:
- Architecting a modular application with concepts like OOP/OOD, concurrent programming and shared memory using modern C++
- Profiling a C++ application, identifying computational bottlenecks and suggesting resolutions for the same
- Identifying problems with Inter-process communication interactions between two independent applications.
- Identifying GPU resource consumption by different deep learning algorithms and managing their run-time load distribution
An ideal candidate would:
- Have worked with C++ for 5+ years in a Linux/Unix environment
- Have the ability to quickly hit the ground running and build/own all the on-device software
- Have the ability to optimize C/C++ for hardware, including experience with: (1) tools like Valgrind, Google Orbit, Gprof for C++ applications, and (2) compilers like g++ and nvcc
- Have experience with concurrent programming including: (1) experience with CUDA or GPU programming in general like using OpenCL or GPGPU, and (2) experience with multi-threading, thread pooling, scheduling, real-time threads
- Have experience with debugging complex C++ issues, including memory leaks, race conditions, thread safety, deadlocks and more
- Have familiarity with computer vision and/or deep learning algorithms and pipelines
- Have familiarity with scripting languages like Python/Bash
- Be passionate about AI and is ready to take risks in a fast-paced startup environment