Senior Embedded Software Developer within Real-Time Computer Vision
Senior embedded developer at 3Shape (dental 3D scanning/CAD) building real-time 3D computer vision components in C++ and GLSL for ARM and x86 SoCs. Day to day: writing and optimizing GPU shaders, SIMD code (NEON/SSE/AVX), and cross-platform toolchains, testing and benchmarking for the TRIOS scanner reconstruction pipeline.
- Compensation
- Not disclosed
- Location
- København, DK
- Work setup
- Remote
- Seniority
- Senior
- Employment
- Not specified
- Experience
- 5+ years
- Category
- Embedded
- Posted
Skills
Must have
- 5+ years of professional C++ development on performance-critical applications
- Solid experience with GPU programming in GLSL or a comparable shading language
- Proven experience with streaming and tiling strategies for high performance on devices with limited cache
- Deep understanding of how compiled code maps to hardware (CPU pipelines, memory access patterns, caching, vectorization) on both ARM and x86
- Experience in computer vision, ideally with registration, filtering and 3D data
- Master's degree or PhD in Computer Science, Mathematics, Engineering or a related field
- Analytical mindset with attention to performance, scalability and maintainability
- Curiosity, drive and intellect to understand challenging problems in depth
Nice to have
- Experience with VTK and its rendering pipeline
- Experience with sparse volumetric data structures and signed distance fields (e.g., OpenVDB, voxel hashing)
- Cross-compiling with Clang and CMake, and testing ARM targets with QEMU
- Experience with Eigen
- Knowledge of existing libraries for cross-platform development
- Experience with SLAM or 3D reconstruction
Full description
Are you a skilled embedded software developer with a passion for cross-platform development for multiple SoC targets? Do you also enjoy turning sophisticated mathematics into high-performing and robust implementations? Do you thrive working with the best of the best in your field in a collaborative setting in the very heart of Copenhagen? If so, we have the opportunity for you!
3Shape is looking for a talented SeniorEmbeddedSoftware Developer to join our Reconstruction Software Area. As a world leader in this domain, we have driven the field’s evolution for decades and are setting the future standard. This is your opportunity to thrive, learn and contribute to cutting-edge solutions used daily to improve dental health around the world.
You will be joining a collaborative and creative team of over twenty Computer Vision and Software professionals at the absolute forefront. You will team up with great system developers, signal processing experts and mathematicians, many of us with PhDs, forming one of the strongest 3D and computer vision teams in Denmark. Being the leader for decades means our problems yet to be solved and solutions yet to be created are the most challenging and rewarding ones. A challenge we address with collaborative efforts of great minds. In a nutshell, our team turns 2D sensor data into 3D and renders the resulting 3D model. The team has the complete ownership of the area spanning research, signal processing, product development, maintenance, tooling, and test automation. As a member of the Reconstruction Software Area, you will team up with one or more colleagues working on an initiative, which could be a longer-term research project or implementing a product improvement hitting the market near-term. In addition, you will act as a sparring partner on other initiatives and take part in our weekly educational sessions.
About us
At 3Shape we aim to advance dental treatment and diagnostics with advanced software and 3D scanners designed for dental professionals across the globe. Our purpose is to advance innovation in dentistry, continuously enhancing patient care and outcomes.
This role places you at the heart of our technological advancements within Product Creation, namely TRIOS & SCANNER SW, offering the chance to shape the trajectory of our innovative products and software applications.
What You’ll Do
- Build real-time 3D computer vision components in C++ and GLSL, targeting both ARM and x86 platforms.
- Write, test and benchmark your modules, and take ownership of their performance and accuracy.
- Help establish a clean, efficient cross-platform development setup (toolchains, testing, benchmarking and CI) that makes development on every target fast and enjoyable.
- Write and optimize demanding shader code for OpenGL and OpenGL ES.