Overview
Design, develop, test, and maintain reliable software installation and deployment solutions across Windows, Linux, and containerized environments. Use AI-assisted development tools to improve development efficiency, testing, documentation, and software quality while validating AI-generated solutions with appropriate engineering judgment.
What you'll do
- Design, develop, test, and maintain software installation and deployment solutions for Windows, Linux, and containerized environments.
- Utilize Windows Installer, InstallShield, and related installation technologies to deliver reliable, scalable, and maintainable installation solutions.
- Develop and maintain installation tools, automation, and scripts using C#, C++, PowerShell, and Bash.
- Apply sound software design and development practices to ensure installation solutions are maintainable, extensible, testable, and reliable.
- Participate in the full software development lifecycle, including requirements analysis, technical design, implementation, code review, testing, deployment, troubleshooting, and maintenance.
- Develop and maintain automated tests and validation processes to improve installation quality and prevent regressions.
- Leverage AI-assisted development tools for coding, scripting, debugging, testing, code review, troubleshooting, refactoring, and technical documentation.
- Evaluate and validate AI-generated code and technical recommendations for correctness, security, performance, maintainability, and compliance with established engineering standards.
- Collaborate with developers, QA, DevOps, architects, and other cross-functional teams to define installation and deployment requirements, designs, and strategies.
- Work with container technologies, such as Docker and Kubernetes, to support modern application and deployment environments.
- Integrate installation and deployment processes with version control systems such as Git and Perforce and automated CI/CD pipelines.
- Support installation and configuration requirements involving SQL and NoSQL database technologies.
- Participate in technical design reviews, code reviews, and knowledge-sharing activities within the development team.
- Troubleshoot, debug, and resolve complex installation and deployment issues through effective root-cause analysis and sustainable solutions.
- Follow Agile development practices and established software engineering standards to deliver high-quality solutions in a timely manner.
- Identify opportunities to leverage AI, automation, and modern development tools to simplify installation and deployment processes and improve engineering productivity.
What you'll need
- 4–7 years of professional software development experience, with experience in software installation, deployment, build, or related technologies.
- Strong programming and coding skills, with the ability to independently design, develop, test, debug, and maintain installation and deployment solutions.
- Strong proficiency in C# and/or C++, with experience using PowerShell and Bash for scripting and automation.
- Strong knowledge of Windows and/or Linux operating systems, including software installation, configuration, upgrade, and deployment concepts.
- Solid experience with Windows Installer technology, InstallShield, or comparable software installation and packaging technologies.
- Solid understanding of software engineering principles, object-oriented design, software design patterns, and maintainable software development practices.
- Strong understanding of the software development lifecycle, including requirements analysis, design, development, testing, deployment, and maintenance.
- Experience with software testing practices, including unit testing, integration testing, automated testing, debugging, and defect resolution.
- Experience leveraging AI-assisted software development tools to improve coding, debugging, testing, code review, troubleshooting, documentation, and overall development efficiency.
- Ability to critically evaluate and validate AI-generated code and recommendations, applying sound software engineering principles and appropriate human oversight.
- Hands-on experience with container technologies, such as Docker and Kubernetes.
- Experience with CI/CD pipelines, build automation, and modern software deployment practices.
- Experience with version control systems, such as Git and Perforce.
- Familiarity with SQL and NoSQL database technologies and their installation and configuration requirements.
- Experience working within an Agile software development environment.
- Strong analytical, debugging, troubleshooting, and problem-solving skills.
- Excellent written and verbal communication skills, with the ability to clearly communicate technical issues, designs, and solutions.
- Strong collaboration and teamwork skills, with the ability to work effectively with development teams and cross-functional stakeholders.
Details
Read the full description and apply on the company’s own careers page.