Senior Software Engineer

Autodesk · Singapore, SGP

onsitefull-time6-10 years

posted 14 Aug

Sign in to apply

Job Requisition ID # 26WD99895 Position Overview In this role, you will be part of a collaborative product engineering team responsible for developing key components that enable Autodesk products to integrate with Autodesk's Identity and Access Management (IAM) platform. You will build and enhance a core Identity Desktop Software Development Kit (SDK) used by more than 40 Autodesk products across Windows, macOS, and Linux platforms. You will collaborate with talented engineers across the globe to support the integration of the SDK into Autodesk's desktop product portfolio while contributing to scalable, secure, and high-quality identity solutions. Responsibilities Enhance and maintain the Identity Desktop Software Development Kit (SDK) across Windows, macOS, and Linux platforms Research, design, and implement the next generation of the Identity Desktop SDK to support future capabilities of Autodesk's Identity and Access Management (IAM) platform Design and implement software solutions that meet functional and technical specifications Document key architectural decisions, design details, and developer integration requirements in internal documentation and knowledge repositories Take ownership of the overall quality, reliability, and maintainability of the SDK Develop unit tests, integration tests, and resolve defects to ensure high-quality software delivery Partner with internal engineering teams to support successful SDK integration across Autodesk products Contribute to continuous improvements in software architecture, engineering practices, and development processes Minimum Qualifications Bachelor's degree or higher in Computer Science, Engineering, or a related field 10+ years of professional experience developing and delivering commercial cross-platform desktop software for Windows, macOS, and Linux Strong expertise in object-oriented design and software development principles Extensive experience developing high-quality desktop applications using C++ In-depth knowledge of modern C++ standards, including C++17 and C++11 Knowledge of Python, Continuous Integration and Continuous Deployment (CI/CD) pipelines, and software testing frameworks Strong understanding of desktop security concepts and secure software development practices Experience working with native networking and cryptography libraries across Windows, macOS, and Linux platforms Proficiency in Inter-Process Communication (IPC) and multithreaded application development Experience working in Agile software development environments Experience developing resilient, fault-tolerant software systems Experience using the Boost C++ Libraries Extensive understanding of software architecture and design patterns Preferred Qualifications Experience developing products or services for large enterprise or global customers Passion for continuous learning and professional growth Strong collaboration and communication skills with the ability to influence and support internal stakeholders Experience working with large cross-functional engineering and product management teams to enable successful product integrations Knowledge of the Go programming language The Ideal Candidate The ideal candidate is a highly skilled software engineer with deep expertise in cross-platform desktop development, a passion for building secure and scalable identity solutions, and a collaborative approach to solving complex engineering challenges Demonstrates deep technical expertise in modern C++ development and cross-platform software engineering Applies strong analytical thinking and engineering best practices to solve complex technical challenges Designs scalable, reliable, and maintainable software that meets both current and future business needs Makes sound technical decisions by evaluating trade-offs, risks, and long-term maintainability Connects individual engineering efforts to broader product and platform objectives Takes ownership of software