Interview Questions & Answer for Build & Release Engineers

build-release-engineer-interview-questions-answer

I get many emails and linkedin personal message about sharing interview questions for Build & Release Engineer and Configuration Engineer.

I have asked some of my friends to share too and now here is the consolidated list of interview questions which is very much commonly asked in interview. if you like it, please share with other members and contribut it too. I will add in this article in next update. mail me at rajesh at scmgalaxy.com

Tag Line:

Interview Questions & Answer for Build Engineer
Interview Questions & Answer for Release Engineer
Interview Questions & Answer for Configuration Engineer
Interview Questions & Answer for Build & Release Engineer

Interview Questions and Answer on configuration management?

  • What do you think about configuration management?
  • What do you understand about Change Management?
  • branching methodologies and what currently theya re using it. Show with some example with pros and cons
  • Concept of Merging and Why do we need?

Interview Questions and Answer on build Management?

  • What do you think about build Management?
  • What are the key benefit of build Automation and what are the key inputs to automate the build process in the project?
  • Discuss about tools and technology which help to automate the entire build cycle.
  • What is Continuous Build Integration and How this is useful for the project?
  • What is daily build & nightly builds and what are the process need to set up to Automate & monitor consistently.
  • Explain in details for writing build sciprt for any project

Interview Questions and Answer on release Management?

  • What is release Management?
  • Talk about Release Management on several platforms?
  • What do you understand about Packaging and Deployment?
  • How to Automate Remote Deployment of Builds on Development & Test Servers?

Some Generic Interview questions for Build and Release and SCM Professionals.

  • What is workflow management. exmplain this in details
  • What do you understand about Code Coverage? Describe repective tools & utilities.
  • Describe the Integrate Packaging scripts & Test Automation scripts with build & Monitor build verification test status and tools.
  • How to co-ordinate with development team to increase their productiavity.
  • What do you understand about multisite project
  • How SCM team perform integration and co-ordination between Dev and QA
  • How do you Troubleshooting your build server. What kind of issues you get in build server or cm server?
  • java Comipler issues in build server and their version
  • C++ compiler issues in build server and their version
  • What are basic skills required for Perforce administration including Command Line info.
  • Explain the best practice for Setup process & maintain the Archive of software releases (internal & external) & license management of Third Party Libraries
  • Concept of labeling, branching and merging in perforce / svn and git
  • Best Practice and strategy of branching and merging in perforce
  • Talk about agile and attempts to minimize risk by developing software in short iterations.
  • Why agile on Iterative development model and Waterfall software development model?
  • What are Bug /Issue Tatcking tools available and descibe them.

Source code control best practice?

  • Use a reliable and dedicated server to house your code.
  • Backup your code daily.
  • Test your backup and restore processes.
  • Choose a source control tool that fits your organization’s requirements.
  • Perform all tool specific administrative tasks.
  • Keep your code repositories as clean as possible.
  • Secure access to your code.

Describe software build best practices?

  • Fully automated build process
  • Build repeatability
  • Build reproducibility
  • Build process adherence

Tools Comparison and Differences

  • Difference Between CVS and SVN
  • Difference Between perforce and SVN
  • Difference Between perforce and Clearcasee
  • Difference Between VSS and TFSC
  • Difference Between perforce and MKS
  • Difference Between Bea Weblogic and IBM Websphere
Tagged : / / / / / / / / / / / / / / /

Software versioning – What is Build Versioning?

build-versioning

Version:  It is a set of code to which major/minor or a Patch of changes is made. Hence we say a build is released to the QA team for testing. Version is normally the Proper number given for the final package after fixing all issues. Normally in most Cases both numbers, version & build are given in order to release a product.

For example, if you see MSN Messenger About box the version
number is given as:

Skype Version: 3.8.0.139

Now if you check the Version number there are 4 different head for this release. Starting from left 3.8.0 is the main version number, and .139 is the Build number which is linked with Version number.

Build:  It is a set of code in executables to which changes are made which is mile stone, Release candidate or general availability based. Build is a complete setup package which is developed

For Internal use, mostly for QA Purposes, if there are issues then they are fixed and new Build number is given to package.

The resource version number is a structure of two double word values, the Most Significant Value (MSV) and the Least Significant Value (LSV). Each value is broken into two parts, the high word and the low word. In a resource script, this is represented by something like “FILEVERSION 1,0,0,1” or “PRODUCTVERSION 1,0,0,1”.   The “1,0” is the high word/low word of the MSV. The “0,1” is the high word/low word of the LSV. There is also a string representation of the versions in the StringFileInfo block.

Version Number to the Build will be Application Packaging team or the Team in charge of Releasing in most of the situations; sometimes it was also done by the Development Team.

Version number is incremented by one number for each and every release. At the start of the application goes to testing it will start with the version number 1.0. For each and every release, it will be incremented by one.
This is done in the SDLC which follows iterative method. The increment is to indicate that the scheduled changes are done to the system in one version and it is tested, and simultaneously the changes are done to the system in the forthcoming builds and subsequently tested.

The version is not necessarily to be incremented by one number, sometimes it is also incremented in the points, this will happen in the case of Defects found in the current build or testing activity abandoned due to application not stable.

Version number is one of the important things in build release as it keeps track of all changes in the code.

Process:
Once the Dev team develops a build, this is sent to the configuration management team. They maintain a document, of version, the change, module, release details etc. This detail of build is stored in server and viewable by all. So that whenever there is a issue, it is enough if we have a look at the history and pull out that particular version and deliver.

Why do we need?
•    To revert back to old working condition Executables
•    To Maintain the Bug fixes and Enhancement Record with particular label
•    To Keep Track of major/minor or a Patch of changes is made.
•    To have the Process of Achieving Milestone Achieved
•    To have Better Transition between QA, Dev and Release Team
•    To Make the  Build and release process Smooth with milestone achieved.

Tagged : / / / / / / / / / / / / / / / /