Apply Edge Tailor my CV for this job — free

Senior Software Developer – 3D Data & Analytics

Mason Contractors Association of America (MCAA) · Algonquin, IL

Tailor my CV for this job — free

See similar jobs

Senior Software Developer – 3D Data & AnalyticsPosition OverviewWe are seeking a Senior Software Developer to design and develop a software solution that processes complex 3D spatial data, extracts meaningful measurements and features, performs advanced mathematical and geometric analysis, and produces structured analytical results.The role involves building a desktop-oriented application that combines 3D data processing, computational geometry, algorithm development, data persistence, cloud services, and interactive visualization.The ideal candidate will be comfortable working with real-world 3D data that may contain noise, inconsistencies, incomplete information, and measurement variations. They should be able to translate mathematical and technical requirements into reliable, maintainable software algorithms.Key Responsibilities3D Data ProcessingDevelop software to import, process, analyze, and visualize 3D spatial data.Work with point clouds, meshes, scanned data, or other 3D representations.Develop techniques for extracting meaningful features, points, surfaces, dimensions, and spatial relationships from 3D datasets.Perform data cleaning, filtering, normalization, coordinate transformations, and other preprocessing activities.Handle variations in data quality, resolution, noise, missing data, and measurement accuracy.Evaluate and optimize approaches for processing potentially large 3D datasets.Computational Geometry & Mathematical AnalysisDevelop algorithms for geometric measurements and spatial analysis.Calculate distances, angles, surfaces, planes, alignment, orientation, straightness, levelness, and other geometric characteristics.Compare measured values against expected values, reference geometries, tolerances, or predefined standards.Calculate deviations and statistical or mathematical measures from observed data.Translate mathematical formulas and technical specifications into robust production-quality code.Validate algorithms against known reference datasets and expected results.Algorithm & Rules DevelopmentDesign and implement configurable algorithms for transforming raw measurements into analytical results.Implement mathematical and business rules used to evaluate and classify data.Structure rules and algorithms so they can be modified, extended, and tested independently.Provide traceability between source data, intermediate calculations, applied rules, and final results.Identify opportunities to improve algorithm accuracy, performance, and maintainability.Python Application DevelopmentDevelop core application functionality using Python.Build modular, maintainable, and testable Python components for data processing and analysis.Select and integrate appropriate Python libraries for numerical computing, geometry, visualization, data processing, and scientific computing.Develop APIs and services as required to support application functionality.Apply appropriate software architecture and design patterns to a data-intensive application.Optimize Python code for computationally intensive operations and large datasets.Desktop Application & VisualizationContribute to the development of an intuitive desktop application for interacting with 3D data and analytical results.Develop interfaces for loading, reviewing, manipulating, and analyzing 3D datasets.Provide visualization of spatial data, measurements, calculated values, deviations, and analytical results.Implement appropriate user workflows, validation, error handling, and feedback mechanisms.Evaluate appropriate Python-based desktop UI and visualization technologies.Cloud & Data IntegrationDesign and implement integration between the application and Microsoft Azure cloud services.Store structured analytical data and application information in a cloud-based database.Develop APIs and data-access components for communication between the application and cloud services.Design data models capable of supporting historical results and analytical datasets.Implement appropriate security, authentication, authorization, logging, and monitoring.Support reliable transfer and storage of potentially large data files and analytical results.Quality, Testing & PerformanceDevelop comprehensive unit, integration, and functional tests.Establish test datasets and expected results for mathematical and geometric algorithms.Validate algorithm accuracy against independently verified measurements.Identify and resolve issues related to numerical precision, data quality, and edge cases.Profile and optimize computationally intensive processing.Participate in code reviews and establish development standards for maintainable software.Required Technical SkillsPythonStrong professional experience with Python programming.Experience developing production-quality Python applications and libraries.Strong understanding of object-oriented programming, modular design, and software architecture.Experience with Python testing frameworks such as pytest or equivalent.Experience with numerical and scientific Python libraries such as NumPy, SciPy, Pandas, or equivalent.3D Data & Computational GeometryExperience working with 3D data, point clouds, meshes, spatial datasets, or geometric models.Strong understanding of 3D coordinate systems and spatial transformations.Knowledge of computational geometry concepts including:Points, vectors, lines, and planesDistances and anglesCoordinate transformationsSurface and volume calculationsPlane fittingSpatial alignmentGeometric tolerancesExperience with libraries such as Open3D, OpenCV, PCL, trimesh, or equivalent technologies is highly desirable.Algorithms & MathematicsStrong mathematical and analytical problem-solving skills.Experience implementing numerical algorithms and mathematical models.Ability to translate technical specifications, mathematical formulas, and engineering concepts into software.Understanding of numerical precision, tolerances, error propagation, and validation.Experience developing deterministic scoring, classification, or decision algorithms.Cloud & DataExperience working with Microsoft Azure.Experience with cloud-hosted relational databases and strong SQL skills.Experience developing REST APIs and cloud-connected applications.Familiarity with Azure storage, authentication, monitoring, and application services.Experience designing data models for analytical and historical data.Software EngineeringStrong understanding of software architecture and design principles.Experience with Git and modern source-control practices.Experience with CI/CD and automated testing.Strong debugging and troubleshooting skills.Ability to write clear technical documentation.Experience working in Agile or similar iterative development environments.Preferred QualificationsExperience with 3D scanning, LiDAR, photogrammetry, depth sensing, or spatial measurement systems.Experience with point-cloud processing and 3D visualization.Experience with computer vision or image-processing technologies.Experience with CAD, BIM, GIS, robotics, surveying, manufacturing inspection, or other spatial-data applications.Experience with scientific computing or engineering applications.Experience working with large or computationally intensive datasets.Experience developing configurable rules or decision engines.Experience with machine learning or AI applied to image, spatial, or 3D data.Familiarity with containerization technologies such as Docker.Experience with GitHub Actions.Ideal CandidateThe ideal candidate is a strong software engineer with an analytical and mathematical mindset who enjoys solving problems involving real-world spatial data.This role is particularly well suited to someone who can bridge the gap between software engineering, mathematical modeling, and 3D data analysis.The candidate should be comfortable taking complex technical requirements, developing the underlying algorithms, validating the results, and turning those algorithms into reliable production software.Strong candidates may come from backgrounds such as:3D software developmentComputer visionComputational geometryScientific computingRoboticsSpatial analyticsComputer graphicsEngineering softwareGeospatial/GIS applicationsManufacturing inspectionDigital measurement systems