03 Nov
|
Nemetschek Group
|
Bengaluru
03 Nov
Nemetschek Group
Bengaluru
Role Overview The SDS-2 Software Developer is responsible for designing, implementing, and maintaining high-quality software components in modern C++ for structural detailing and modeling products. Working within a cross-functional agile team, this role contributes to new features as well as the performance, reliability, and usability of existing functionality. The role blends strong C++ engineering with 3D geometry understanding and effective use of Modern developer tooling, including AI-assisted workflows.
Key Responsibilities
• Design, develop, review, and test C++ software components that meet product requirements, coding standards, and performance goals (C11+ minimum, C17+ preferred).
• Implement algorithms involving geometry, vector math, and 3D modeling to support CAD and structural detailing workflows.
• Collaborate with Product Owners, Software Architects, and QA to refine requirements, user stories, and acceptance criteria, and to estimate and plan sprint work.
• Participate in and perform code reviews, ensuring code quality, maintainability, and adherence to architectural guidelines.
• Debug and troubleshoot complex issues from QA and customer reports; perform root-cause analysis and implement robust fixes.
• Maintain and enhance existing modules, refactoring legacy code to modern C++ where appropriate.
• Use Python and relevant scripting tools to automate tasks, build utilities, and support integration or test workflows where beneficial.
• Develop and maintain UI or tooling using Tcl/Tk, Tkinter, Qt, and/or libraries such as Open Design, depending on project needs.
• Work effectively with Git for branching,
merging, code review workflows, and release preparation.
• Leverage AI-assisted tools (e.g., GitHub Copilot) to increase productivity while maintaining code quality and security.
• Contribute to AI-driven features and integrations (e.g., MCP-based components, intelligent assistants, or automation within the product).
• Create and update technical documentation for implemented features, APIs, and key design decisions.
• Continuously improve development practices, tooling, and pipelines in collaboration with the team and Team Leader. Requirements Must-Have Qualifications
• Good communication skills and ability to work both independently and as part of a cross-functional team.
• Bachelor's or Master's degree in Computer Science, Software Engineering, Mathematics, or a related field — or equivalent professional experience.
• Several years of professional experience as a Software Developer, ideally in CAD, engineering, or other 3D/geometry-heavy domains.
• Robust proficiency in modern C++ (C11+ required, C17+ preferred), including templates, STL, RAII, smart pointers, and concurrency primitives.
• Solid understanding of software engineering principles, design patterns, and clean code practices.
• Experience working with Git in a team setting (feature branches, pull/merge requests, resolving conflicts, code review workflows).
• Good knowledge of vector math, numerical methods, or computational geometry relevant to 2D/3D modeling.
• Experience in an agile environment (Scrum or Kanban), including sprint planning, estimation, and retrospectives.
• Strong problem-solving and debugging skills, with attention to detail and a focus on robust, maintainable solutions.
• Proficiency in English, written and spoken. Valuable / Nice-to-Have Skills
• Python — for tooling, automation, scripting, or data processing alongside C++ workflows.
• UI/Application Frameworks — experience with one or more of: Tcl/Tk, Tkinter, Qt, or OpenDesign for building application interfaces or visualization tooling.
• 3D Modeling & CAD Knowledge — background in structural engineering, construction, BIM, or related domains; familiarity with vector math and geometric algorithms.
• AI Tool Usage — hands-on experience using AI-assisted development tools such as GitHub Copilot or similar in day-to-day development.
• AI-Implementation — experience contributing to AI-powered product features or internal tools (e.g., MCP-based services, ML-driven suggestions, or intelligent automation pipelines).
• CI/CD & Automated Testing — familiarity with continuous integration systems and automated testing frameworks (unit, integration, regression).
• Issue Tracking — experience with Jira or similar tools for sprint and backlog management.
📌 Software Developer (Bengaluru)
🏢 Nemetschek Group
📍 Bengaluru