Software Infrastructure & Automation Engineer
Job Summary
Key Responsibilities
Development Infrastructure & Developer Experience
- Act as the primary interface between Development and DevOps/Infrastructure teams.
- Improve developer productivity through tooling automation and process optimization.
- Design and maintain solutions that simplify development workflows and reduce manual effort.
- Support onboarding and enablement of engineering teams.
- Define and promote development best practices and standards.
Intelligent Testing & Change Impact Analysis
- Develop solutions that identify affected components and determine the appropriate tests to execute based on source code changes.
- Build traceability between source code build artifacts dependencies and test suites.
- Support implementation of selective and risk-based testing strategies to reduce validation time.
- Analyze dependency relationships across large C codebases.
- Integrate change impact analysis into development workflows to improve validation efficiency and release confidence.
GitLab & Source Control Management
- Administer Gitlab workflows in a multi-repo multi-product scenario with inter-dependencies
- Maintain and develop automation solutions leveraging GitLab APIs.
- Design branching merge and release management strategies.
- Define and enforce source control best practices.
- Support repository lifecycle management and integrations.
- Troubleshoot Git and GitLab-related issues across multiple teams.
Build Systems & Software Infrastructure
- Support and improve large-scale C build environments.
- Troubleshoot and optimize build performance dependency management and development workflows.
- Maintain cross-platform development environments on Linux and Windows.
- Analyze and resolve build linkage packaging and deployment issues.
- Collaborate with development teams to improve build architecture and maintainability.
Software Packaging & Runtime Infrastructure
- Understand and manage:
- Dynamic libraries (DLLs SOs)
- Static libraries
- Executables and binaries
- Runtime dependencies
- Third-party components
- Investigate dependency conflicts and runtime issues.
- Support artifact management and software distribution processes.
Developer Tools & Internal Platforms
- Develop internal tools using Python Shell scripting and APIs.
- Create dashboards reports and monitoring solutions.
- Build self-service tools that improve developer efficiency.
Source Control & Collaboration
Strong knowledge of Git GitLab GitLab APIs repository management branching & release workflows.
Programming & Scripting
Strong Python programming skills.
Strong Shell scripting (Bash/PowerShell).
Experience developing automation tools and utilities.
Experience working with REST APIs.
Operating Systems
Strong Linux administration and troubleshooting skills.
Strong Windows development environment knowledge.
Experience supporting crossplatform development.
Build Systems
Experience with make build systems.
Software Development
Strong understanding of largescale C applications build systems dependency management static/dynamic linking DLL/SO management compiler toolchains and multiplatform environments.
Testing & Quality Engineering
Knowledge of unit integration and system testing.
Experience with test automation code coverage analysis dependency/impact analysis and test selection strategies.
Required Skills:
Required Skills: Bachelors degree in mechanical engineering or related discipline 4 years experience with QA and testing of CAD/PDM/PLM product Excellent analytical skills Expert level knowledge of one or more of leading CAD and PLM systems like NX Solid Edge Creo CATIA V5 Solidworks Teamcenter Teamcenter Visualization would be required Prior QA experience with NX and Teamcenter would be a plus Knowledge about CAD software quality assurance process both manual and automated would-be a plus
Required Education:
BE