Description

Designing and developing software applications, establishing a state-of-the-art Development Operations process for Varian's radiotherapy applications development and their delivery.

Enhancing the current build process and implementing new processes using in-depth knowledge of Windows environment, Prerequisites to install Varian software installers, educating all cross functional teams.

Performing build and release activities while automating processes and follow project release schedules.

Researching, Designing and Implementing of Standards and Best Practices for installation packages, development of installation packages for new applications, re-engineering of installation packages for existing applications.

Setting up and maintaining Build and Release pipelines for Varian products, DoD and CyberSecurity packages.

Electronic golden media workflows for Varian products..

Creating Build infrastructure, Writing Software Build procedures and documenting IQOQPQ of build servers.

Automating software to a single click level by becoming proficient with the existing system and processes.

Automating Varian's radiotherapy installers, test setups and suites, writing code, debugging, and testing.

Performing Product Evaluation for selection of Automated Software Deployment tools and Development of methods for their use in regulated environments.

Creating Proof of Concept (POC) of selected approach to review with Engineering and PSE teams.

Designing and implementing of test lab for Automated Software Deployment [Automated desktop provisioning, scripting: VBScript / shell / WinBatch].

Integrating of installation package builds with TFS automated software build system / processes, secondary support for automated software build system.

Advising and assist service and operations on improving uptime, reducing service incidents, and accelerating software deployments.

 

Minimum Qualifications:

Bachelor's degree or Engineering or technical related degree (or equivalent experience) and 8 years of related experience or master's degree with 6 years of related experience.

8+ years of professional software development experience.

Comfortable with liaising with stakeholders, to resolve issues, whilst also having a proactive attitude to work within a fast-paced environment.

Proficient in Object Oriented Programming and one or more programming like C++, C#, Python.

Proficient in one or more scripting languages including Batch and PowerShell.

Experience of build, release, and deployment on Microsoft technologies.

Build tools - MSBuild/Nant/Ant/Maven, etc.

Version control tools - Azure DevOps/GitHub/Git/Bitbucket/Subversion, etc.

Familiar with SCM technologies like TFS and Git.

Continuous integration/delivery tools - TeamCity/Jenkins/TFS Builds, Azure DevOps, etc.

Artifact management tools - Nexus/JFrog Artifactory, etc.

Package management tools - Nuget, etc.

Virtualization planforms/tools - VMWare vCloud Director/VMWare vSphere/Hyper-V, etc.

Experience in SQL as well as NoSQL database technologies.

Ability to setup CI/CD pipelines both on-prem and in the cloud. Experience with mixed scenarios e.g., CI on-prem CD on the cloud.

Windows Installer (MSI) technology with application packaging tools - Firegaint WIX (3.x/4.x), etc.

Familiarity with digital certificates (asymmetric cryptography) desired

Knowledge of static code analysis tool such as Coverity and SonarQube

 

Preferred skills:

Design and development of tools for efficient configuration management, build and release of software developed in open-source technologies, C#.NET, C++, COM, SQL Server databases, web-based infrastructure components like IIS/Tomcat.

Strong understanding of operating systems, especially Windows and VxWorks preferred.

Experience with software development in regulatory environment preferred!

 

Nice to have:

Experience using cloud platforms - Azure/AWS, Containers, Docker, Kubernetes etc.

Serverless / Azure Container Instances container orchestration.

Azure SQL Scaling: Dynamic Scaling (vertical, horizontal), tuning, etc.

Monitoring System (Core, Deep, Infrastructure, Application, Shared).

Experience using containerization tools - Docker/Kubernetes/Windows Containers, etc.

Manage Cost vs. Scaling vs. Failover of the Azure Infrastructure

Education

Bachelor's degree