Scandit is a high-growth tech scaleup from Switzerland with offices in Zurich, Boston, Warsaw, London, Singapore, Tokyo, and Tampere. Our market-leading smart data capture technology enables businesses to use any standard mobile phone to extract data from barcodes, ID documents, text, and objects.
The barcode decoding team at Scandit builds cutting edge computer vision solutions. Our mission is to replace every hardware scanner in the world with a Scandit powered mobile app. In addition we provide computer vision components for all Scandit products including augmented reality and shelf monitoring.
About the Role
As a Senior C++ Engineer in the barcode decoding team, you will work together with computer vision and machine learning engineers on our Data Capture SDK product, a software library for mobile phones. You are responsible for good software architecture, data structures and tooling. You optimize our real-time on-device algorithms so that they scale on different hardware platforms and work for different use-cases.
What You Will Do
Optimize and extend our in-house computer vision library and deep learning inference engine
Enhance the scheduling of computer vision tasks on heterogeneous architectures (CPU/GPU/TPU) for different use-cases
Improve the accuracy and capabilities of our on-device performance profiling system
Design and refine APIs and the architecture of our SDK components
Support CV/ML engineers with C++ code review and integration
Lead projects on a technical level
Our Tech Stack
Computer vision algorithms: C++17, CMake
Machine learning training and tooling: Python, Pytorch
Acceleration: SIMD, Vulkan, CoreML
Who You Are
You have a passion for efficient and well maintainable code. You are excited about the latest developments in C++ and like to advocate for them. In your past career you have worked on large C++ projects and deployed them to production successfully.
Ideally, you have:
A MSc in computer science or a related field
You have 5+ years of experience writing modern cross-platform C++ code
You have optimized algorithms using multi-threading and SIMD
You believe in automated testing for producing high-quality code
Ideally you are familiar with the ARM architecture (incl. NEON)
Ideally you have worked on GPGPU implementations in OpenGL(ES), Vulkan or Metal
Experience in mobile development, computer vision or machine learning is a plus
Experience in Python programming is a plus
You are thorough and pay attention to details
What We Offer
Here are just some of the reasons why people choose to build their career at Scandit:
A highly skilled team and a fun environment where you can put your enthusiasm for cutting-edge technologies to use
Excellent office infrastructure, optimized for hybrid working in Zurich, Warsaw, Tampere, and London.
Excellent support for remote work across the UK, France, Italy, Spain, and Germany
Innovation hackathons
People-first culture
Global team outings
Festive/end of year all company celebrations
Extra vacation day off on your birthday
An attractive individual equity plan in a high growth company
Do good and give back with two impact days where you are able to give time to one of our trusted nonprofit partners
Specific benefits related to the location you are joining
Who We Are
Could your code give superpowers? Whether enabling delivery drivers to make quicker deliveries, matching a patient with their medication or allowing retailers to make store operations more efficient, our technology automates workflows and provides actionable insights to help businesses in a variety of industries. This means we have no shortage of technical challenges for engineers like you. Join us, as we continue to expand, grow and innovate, and help take Scandit to the next level.
“Everybody is welcome here” - Is a celebrated component of our DNA.
At Scandit we strive to create an inclusive environment that empowers our employees. We believe that our products and services benefit from our diverse backgrounds and experiences and are proud to be a safe space for all.
All qualified applications will receive consideration for employment without regard to race, colour, nationality, religion, sexual orientation, gender, gender identity, age, physical [dis]ability or length of time spent unemployed.