Senior Software Developer
TopoDOT, LLC
Point Cloud Processing Software
Senior Software Developer – C++ / C# / GPU Programming
We are seeking a highly skilled Senior Software Developer with deep expertise in C++20, C#, and GPU programming to join our engineering team. This role offers the opportunity to take ownership of complex system architecture, contribute to high-performance point cloud processing software, and shape the evolution of our cutting-edge platform.
Key Responsibilities
- Lead modernization and refactoring of our existing C++ codebase, bringing it up to C++20 standards for improved scalability, performance, and maintainability.
- Design, implement, and optimize a high-performance engine for processing and rendering point cloud datasets exceeding 1 billion points.
- Architect and optimize advanced data structures (Octrees, k-d trees) to accelerate spatial queries, analysis, and rendering.
- Build new features and tools for our point cloud software suite, driving projects from concept to deployment.
- Leverage GPU programming techniques (Boost.Compute or similar) to maximize computation efficiency.
- Collaborate with a team of experienced developers, contributing to code reviews, technical discussions, and best practices.
- Diagnose and resolve complex issues related to performance bottlenecks, rendering artifacts, and computational errors.
Required Qualifications
- 5+ years of professional software development experience.
- Expert proficiency in modern C++ (C++20).
- Strong experience with C# and .NET 4.8 Framework.
- Hands-on experience with GPU programming using Boost.Compute or similar libraries. GPGPU Programming
- Solid foundation in linear algebra (vectors, matrix operations, transformations).
- Proficiency with Git and modern version control workflows.
- Demonstrated ability to architect complete software solutions independently.
- Ability to Architect Solutions Independently
- Memory Management (Crucial for us):
- Rehearsed / Surface-Level Knowledge
Preferred Qualifications
- Experience with computer vision libraries (e.g., OpenCV) for feature detection, segmentation, or image manipulation.
- Familiarity with point cloud data processing and large-scale spatial datasets.
- Strong knowledge of spatial data structures (Octrees, k-d trees).
- Experience applying AI/ML models for detection, classification, and localization in imagery or point cloud data.
- Previous experience in CAD software development.
- Proficiency with MATLAB for prototyping and analysis.
Employer Note:
Only qualified applicants will be considered. Our company is growing quickly and this is an amazing opportunity with a lot of growth potential for the right candidate.