Open Opportunity

Staff Software Engineer, C++ Computer Vision

Remote

Share This Career Opportunity

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