An actual e-mail with interview pre-screen questions about build and CI. Note the answer to #7, classic!
Release Guy,
Below are the eight prequalifying questions that <name removed> requested you answer.
- What factors influence the opening of a feature branch?
- What is the purpose of continuous integration for a development team?
- Describe a branch structure for a highly iterative web product?
- Describe a set of release criteria for web calculator application?
- When are you available to start a new position?
- What are your top 3 strengths?
- What are your top 3 weaknesses?
>>>>>>>>>>>>>>>>>>>>>
Hi Ms. Recruiter chick,
Please see my responses below:
1) What factors influence the opening of a feature branch?
Typically, feature branches are created in cases where the new feature or enhancement has broad-sweeping changes to the code base such that introducing them in the trunk may be too disruptive. Also, feature branches may be used for prototyping or proof-of-concept for code that may never end up in trunk.
2) What is the purpose of continuous integration for a development team?
The primary purpose of CI is to provide regular, fast feedback to developers as they commit changes to the shared code repository (VCS).
The idea being that we’re always integrating our code on commit, so that when conflicts arise, they can be addressed more quickly and easily than if the changes had been made days, week, or even months ago.
3) Describe a branch structure for a highly iterative web product?
A common branching structure would be as follows: one primary line of development, called “trunk”. All iteration work should be done in trunk, except for cases as described above where branches are appropriate. For those cases, a private/feature branch is created, and the “owners” of that branch take responsibility for merging trunk into said branch periodically (at least weekly, maybe more, depends on churn/code change volume) so as to avoid too much drift.
Upon completion of the initiative which required a branch, those changes are merged back into trunk in time to perform regression testing ahead of the next production release.
Prior to production release, a “release branch” should be created. This is effectively the “release candidate”. Access to commit to the release branch should be limited and relatively controlled. Any changes made to the release branch should be merged back into trunk as well.
Builds, deployments, and regression testing should be performed against artifacts built off of the release branch. After successful release (“go-live”, “launch”), the branch gets locked down again and is kept around in case a high-sev bug is found in production and needs to be fixed asap.
4) Describe a set of release criteria for web calculator application?
Release criteria is fairly subjective and varies a lot depending on the organization and the app. That being said, software should not be released without the following:
- an understanding of the purpose of the release
- all high severity bugs closed or deferred
- release notes with a list of detailed fixes/enhancements (bug #’s perhaps?) and instructions for any server config or settings changes
- sign-off from a QA person (preferably some type of “lead”)
5) When are you available to start a new position?
6) What are your top 3 strengths?
Communication/collaboration, ANT scripting, troubleshooting/optimizing Java builds
7) What are your top 3 weaknesses?
I, like Chuck Norris, have no weaknesses.
Thanks,
Release Guy
May 12, 2011 at 2:23 am |
Nice Interview questions for Build Engineering positions.
June 25, 2013 at 12:06 pm |
please send me the address of the institutes in Hyderabad which offers build and release course
October 30, 2013 at 9:19 am |
ITTrainersOnline is the best of all in Hyderabad.
They have a youtube channel – scmbuildtutorials which has many videos shared about Build and Release topics.
April 20, 2017 at 2:03 pm |
nice imformation
February 19, 2018 at 8:31 am |
Gamutgurus technologies in Bangalore(Marathahalli) is the best institute for DevOps, Build and Release courses.
February 21, 2018 at 11:08 pm |
Rising numbers of scholars have reportedly set out to advance their credentials in a shrunken and increasingly competitive job market, contributing to an increase in master’s diploma enrollments, based on Inside Higher
Schooling https://math-problem-solver.com/ . The digits add as much as 27, which add as much
as 9.
November 2, 2021 at 12:04 am |
w88link461.mystrikingly.com
blog topic
March 22, 2023 at 5:37 am |
physical dedicated server
Build Engineer interview questions | Release Management