The Configuration Management Engineer maintains and advances our continuous delivery and deployment process. Essential functions include the following:
- Produces automated product builds from source control.
- Troubleshoots failed builds, identifies problem trends and works with other developers to make improvements.
- Works with scrum teams to setup automated branch-specific builds.
- Improves consistency and reproducibility of automated tests run as part of builds.
- Works with virtualization and/or cloud technologies to improve turn-around time of build and unit test results.
- Continues to improve the automation and efficiency of our continuous build and delivery systems.
- High school diploma required; college coursework in Computer Science
Required Knowledge and Experience
- .NET development experience: minimum 2 years, with at least intermediate level coding skills in C# and the .NET platform
- Hands-on experience working as a Build & Release Engineer ideally with .NET based applications including:
- Design, setup, and modification of continuous build environments
- Demonstrated MS Build Scripting/Team Foundation Server and/or PowerShell scripting experience
- Familiar with Project/Program Management concepts and SDLC lifecycle
- Understanding of the GAC, .Net Assemblies, Web Services, Windows Services, WCF, IIS, C#, XML and .NET Platform
- Proficiency in Microsoft Visual Studio 2012/2013
- Ability to create and manage complex build environments involving numerous agile teams, components and development environments
- Experience creating installation packages for Windows using WiX, InstallAware or similar toolsets
- Experience writing unit tests and familiarity with common testing frameworks
- Familiarity with source control branching techniques
- Experience with TFS for source control, familiarity with other systems is a plus
- Familiarity with virtualization technologies such as VMWare ESX, Hyper-V. Ability to script/automate deployments is a plus.
- Ideal candidates will have experience in automated Continuous Delivery SaaS environments with deployments to AWS/Azure or other Cloud provider
- Ability to think outside the box, to find far superior ways of doing things, particularly in meeting our customers' needs, yet able to keep things simple and not over-design
- Ability to work with a team—to brainstorm, design and work together to produce world-class solutions
- Not being afraid to tackle new or unfamiliar technologies/platforms
- Ability to contribute some specialized knowledge in areas previously used
- Solid organizational skills and attention to detail
- Good interpersonal skills
- Strong project management abilities
- Willingness to assist others and support them
- Ability to operate all related computer applications and hardware