|The Build Engineer is responsible for developing and maintaining systems and infrastructure to run automated code builds, unit testing, integration testing, deployment packaging, and deployments. This person will also perform code merges across all development and test environments, perform data refreshes as needed, and will maintain branching in source control. In addition, they will monitor all automated builds and tests for failures, and work directly with the developers and testers to resolve failures. The build engineer will create release packages and instructions and will work closely with the release manager and project managers to coordinate timing on releases. The build engineer will also develop reports and dashboards for upper management.
- Develop technical solutions that meet the Association’s high standard of quality.
- Adhere to industry standard best practices for software development.
- Focus on continuous improvement with version control, unit testing, automated testing, automated deployment capabilities, and eliminating waste.
- Develop and maintain build platforms, packaging, deployment, testing and releases.
- Research new improvements to framework build, packaging and deployment.
- Resolve build issues, working with developers as needed.
- Manage source code, change control, configuration management, and build deployment activities.
- Maintain fully documented build and release procedures and technical specifications.
- Ensure version control is followed: maintain consistent repository structure, create branches for release to production, manage them, help developers back port bug fixes, merge code, ensure the trunk is current release source code, and direct commits to the correct branch.
- Maintain the toolset to automate everything as much as possible. Build scripts and websites as necessary to integrate outside tools.
- Automate daily builds, unit tests, integration tests, and deployments to controlled environments.
- Automate set up of new environments.
- Create deployments to production that will be executed automatically by Application Production Support.
- Create dashboards for management on build and testing execution successes and failures.
- Adherence to compliance, audit, regulatory, and information security requirements.
- BS in Computer Engineering, Computer Science or BA with equivalent technical competency.
- Three to five years previous related experience required.
- Scripting technical knowledge, as well as database and software programming experience.
- Experience with version control (i.e. Subversion), issue tracking and build/release management
- Experience with Extract Transform Load (ETL) and Data Warehousing a plus.
- Excellent problem solving skills.
- High attention to detail and follow through
- Ability to multitask on a variety of projects
- Foundational understanding of the software lifecycle and software engineering best practices, including specification, documentation, configuration management, testing and quality assurance
- Strong interpersonal skills to work effectively in a team environment.
- Strong written and verbal communication skills
- Demonstrated ability to work independently, prioritize individual work load, troubleshoot and remedy problems under pressing deadlines.