I wrote this article to motivate the students who wants to build their own IT career faster in their early ages without depending on corporate to earn more perks in a faster way.
Lot of global IT services companies they conduct campus recruitment to select the top notch percentages acquired students to offer as software engineers.
During this process, each corporate might plan to groom the students on different skills in 6 to 10 months time by paying the agreed salary.
Once they are successful in their training and they can offer these candidates to different business units to hire them for their customer projects either under billable or non-billable. Depends on the projects requirement the candidates will be placed either on the candidate desired skills or non-desired skills.
Each fresher candidate [student] deployment onto the customer project might take typically 6 to 12 months; which includes their grooming/training on different skills. They will be placed onto the cusotmer projects with or without interviews.
Their productivity starts to corporate after one year of their joining time into the corporate company. Typically most of the corporate companies they recruit the students from the campus on bond for 2 years.
During this two years time each student might lose one year of their career time due to the corporate companies’ delays in their internal planning and adjustment of the selected students in different customer projects.
Sometimes, most of these students cannot be guided perfectly as corporate companies commit to students, due to lack of their internal mentors and all the processes are not synchronized across the company or by all locations. In such case the lucky students only can gain the advantages of the corporate companies’ commitments or professional lavishness.
Otherwise they to need burn themselves to pickup the technology skills to meet to the cusotmer requirements and also to the project role expectations.
Most of the students waste their time by hanging on to such campus recruitment process as they feel the large companies are their career guiders or ladders.
But really the student has to stick on to the corporate to climb their ladder. Some freshers might have been groomed well because of they are placed by luck under good mentors. Most of them may not get this chance also.
What are the alternate ways to save freshers time?
There are few standard companies they consider the bright or non-bright students and groom them as Software engineers. During this process of grooming they will deploy them on to their internal development projects. They offer them as Trainee software engineer with the below models.
- Some of the companies they consider them on bond for 1 or 2 years without charge.
- Few companies they charge for the initial grooming time.
During the above process these companies adhere to the standard skill those are in demand of the market. With those industry demanded skills after completion off their trainee tenure either they can look for direct software engineer jobs or they can negotiate with the groomed companies to get a job with them.
Let us assume , If one candidate has learnt the skills with their live projects/products development activities he/she will be able to get a direct job more than the campus recruitment offer made by large corporate. And this candidate can save their time comparatively with their co-student who has joined in campus joining with the large corporate company. This way it saved his career building time and also he/she may get more offers in a year time.
When a fresher[college student] need to enter into a job market, he/she need to answer to the below questions:
What is the decision any young IT professional need to take in this dynamic changing IT environment?
Do I Have the capability to build my strategic career?
Do I need to stick or depend on through a company or need to make my own career plan?
Do I need to learn multiple skills initially to make myself with more returns?
Do I need to accelerate my competency? Or Do I need to have retardation by depending on a company?
Do I need to stick on to a corporate ladder or can I build my career bricks with day one foundation?
Do I need to build skills myself or depend on large corporate ?
Am I looking for a right company for my skills improvement in a faster way ?
Am I looking for any certifications for my long term career building ?
All the above scenarios a fresher need to determine and make a strong decision to accelerate their faster career building in this faster technology changing and competent environments.
In continuation of my previous blog [https://wordpress.com/post/vskumar.blog/1944] on this subject following questions and answers are continued:
1. What is a collaborative development approach in agile development model ?
Ans: In any agile project as per the Agile manifesto principles the team need to pull up the ideas through a prototype like; either phased prototype or iterative prototype or rapid prototype. With these pulled ideas, the team need to work together by sharing knowledge among themselves and which is considered as a collaborative development approach.
2. What is model storming during construction phase of an agile development model?
Ans: When the initial requirements are envisioned they all are being transmitted into different iterations. A single team or multiple teams need to execute the iteration during software code construction. The requirements also can be changed or newly added by the stakeholders as per the agile principles at any stage of Agile project phases. The team need to be brain stormed to execute the iterations correctly and completely as per the user’s desire. The iteration can be considered as a single agile model for construction phase and this model storming can happen within team for clear understanding of SPRINT by each developer. During the model storming; the requirements decomposition happens like; from user story to design specifications those can lead to SPRINT items, and from design to code specifications. Depends on the team planning; sometimes the outcome of model storming can also be a TDD [Test Driven Design]. [Please look into my youtube videos on Agile topic reusable code example]
3. What is Test Driven Design [TDD]?
Ans: Any requirement [story] need to be decomposed into design requirement. Each design requirement need to be converted into code through construction phase. When the code is visualized [before development] by the developer a test driven scenario need to be identified or visualized by the developer and it need to be documented into a test case with different test design steps. Once the developer feels this test case can be executed by using different code paths the developer can start the code writing, this concept is called Test Driven Design and using this TDD specification the development can be started. Hence the Agile developers need to make TDD 1st ready and plan for code writing, review and unit testing. Sometimes the TDD can be the outcome of the model storming also.
4. What is confirmatory testing?
Ans: In any software build there can be defects through different levels of testing. When the developer fixes one or more defects and deploy code in test environment, the test engineer need to retest it for confirming the software function with reference to the regression requirements or functionality and the fixes [if any]. For every fix confirmation test is mandatory.
5. What is evolving documentation?
Ans: As per the agile process when the code is constructed and tested the prepared documents need to be updated with reference to the tested and certified build. If any new requirement has to be incorporated into document, the documentation evolving is an ongoing activity for an iteration build till it goes to production.
6. What is internally deploying software?
Ans: Once the construction is over for an iteration requirement, software can be unit tested and integration tested. If it is passed, it can be move to other test environments. As per the deployment process when we are moving software into the different environments [after test certification or confirmation] the build is known as internally deployable software.
7. When can you finalize the documentation in agile model?
Ans: During the transition stage once the acceptance test is signed off users suggestions are considered to finalize the documentation.
8. What are tangible and intangible benefits for users?
Ans: In any business requirements there are direct benefits from business to incorporate software requirements into software system which is considered as tangible [direct] benefits. There are intangible [indirect benefits] also by incorporating different requirements into software with a business usage.
Example: If the system performance is increased by a technical design in the software architecture, users can access the data faster which is intangible benefits. Then the iteration can facilitate to perform the software with faster data access or the web pages appearance can be faster. Sometimes this kind of requirements can come into technical areas rather than coming through a user story in Agile and those can be intangible benefit. Even we might consider an upgrade to database or OS or memory, etc. then also the data access speed can be increased.
9. What is the feedback analysis? When it can be done?
Ans: As per the agile principles the stakeholder collaboration is an ongoing activity. At any time the stakeholder can give informal or formal feedback for any software items or in any approach followed by agile teams. In agile model many times informal feedback can happen during the discussion. At the same time the scheduled reviews also can happen. During the review the feedback can be given by the reviewers. Even a test result can come into a feedback category. All these feedback items need to be analyzed for delivering a working software by the teams as per the principles. Sometimes the feedback analysis outcome can come into process improvements areas for the next iteration and these should be considered for Retrospective items. Hence the feedback analysis is a mandated activity at every task completion stage in Agile project.
10. What is demo in agile model?
Ans: With reference to the rapid prototype approach agile teams are supposed to demonstrate skeleton design for a new module. it is a plan to demonstrate skeleton system to the stakeholder and to get the feedback for processing further SPRINT or Iteration items. This demo is organized depends on the software or initial plan for a given iteration.
Keep watching this site for further updates.
Contact for any guidance/coaching.
In continuation of my previous questions blog [https://vskumar.blog/2017/09/04/sdlc-agile-interview-questions-for-freshers-1] on this topic these were made.
SDLC and Agile Model:
Questions on SDLC Phases:
1. How the agile methodology has been architected?
Ans: The agile methodology has been architected with 12 principles to govern the agile development approach.
2. What is highest priority during agile development model?
Ans: The highest priority is customer satisfaction and the early and continuous delivery of software which will work for the customer requirement.
3. Why the agile development models need to accept the request on irrespective of the development stage?
Ans: As per the fundamental approach of agile development it provides facility to the users towards inception of new or enhanced requirements before the delivery.
4. During agile development approach who all need to work together?
Ans: The business people and software developers need to work collaboratively and consistently throughout the project life cycle.
5. To get the right delivery what do we need to do during agile development model?
Ans: In agile project we need to have self motivated individuals at the same time we also need to supply the required human and non–human resources to get the job done.
6. When the life cycle of agile model ends?
Ans: The agile model continues till the retirement of the product or project. When the customer decides the retirement of the product then the project operation is terminated.
7. Why do we need to have face to face conversation during agile development approach?
Ans: The agile principle guides to have face to face conversation among the project resources to have most efficient and effective method of communication.
8. How can you measure the progress and success of agile project?
Ans: The basic concept of agile is to deliver the working software of component.
9. How the agile development process need to be promoted and to whom all ?
Ans: Agile development process need to be promoted in a sustainable development for continuous delivery to the sponsors, developers and users.
10. Why do we need technical excellence and good design project delivery?
Ans: The concept of the agile is for continuous delivery to the users as per the requirements in an iterative development approach. The team capacity needs to be accelerated towards the functions and processes to work on good software design.
Keep watching this site for further updates.
Contact for any guidance/coaching.
URL is : https://www.urbanpro.com/vskumar
If you are a fresher for an IT job trials this might be useful.
Please note as per the current global IT Industry trend most of the IT organizations have moved into Agile SDLC and Continuous delivery cycles. Hence you, being fresher should be ready with this knowledge. I have made some of the below questions related to this topic.
[Also look into my old blog: https://vskumar.blog/2016/11/24/on-job-training-for-future-software-engineers-freshers-how-it-saves-their-career-time/]
SDLC AND Agile Model:
Questions on SDLC Phases:
1. What are the general phases for SDLC [Software Development Life Cycle] ?
Ans: In any development model [SDLC] following are the different phases for software delivery :
a) Requirements Investigation and analyzing
2. Where can you get requirement specifications in SDLC?
Ans: During the phase of Requirement investigation and analysis, the output will be Software Requirement Specifications. In every project during this phase user involvement is essential to get the business requirements to make the right software.
3. What is the procedure to derive the design specification?
Ans: During design phase the design specifications will be output of this activity. During this phase the final SRS is considered and it should be derived for design specification against each requirement. One requirement can have more than one design specifications. Basically you will be decomposed the software requirement into one or more design specification(s).
4. What is development or construction?
Ans: Once the design specifications have been baselined, the developer takes the design specifications to convert them into code. This activity is called constructing or developing code. The technology should be used for coding need to be specified in the design documentation. Example: Let us assume you want to develop the code in Java, so the technology should be Java.
5. What is implementation in SDLC?
Ans: The implementation activity need to be started once the code construction is completed, the code construction involves coding, code review and unit testing, integration testing. Once these 3 tasks are completed the project is moved to next phase that is implementation. During implementation phase the relevant test environment is considered for deployment of software builds for test cycles. Depends on the SDLC model; system testing and user acceptance testing can be performed, during the implementation software build can be deployed into live once the user certify UAT [User Acceptance Testing]. The Live environment is also called production environment.
6. What is the meaning for software management and retirement?
Ans: Once the software is deployed into production or live environment under first release there can be bug fixes or software enhancements; those can occur under application management life cycle and which can be a software management also. With this concept software is being upgraded during its life time. When the new technology or business systems are considered towards equivalent or more of the current software features then current software build should be retired.
Example: A mainframe [COBOL/DB2/CICS] application can be converted into windows based with Java technology. Then the existing COBOL/DB2/CICS application can be planned for a retirement with the replacement of the newly planned application. The new application can also have some more software features or the same features can be implemented.
Questions on Agile:
7. How the agile development model pulls the ideas ?
Ans: Agile development model pulls the ideas in a phased manner in the following way, by using a) Prototyping b) iterative development c) Rapid prototyping. During these phases the stakeholders or users involvement is mandatory. Their needs or suggestions also comes into the ideas for making the right software.
8. How the agile model champions the ideas?
Ans: By following various phases, different ideas are generated into the agile model. Using this approach it accelerates the software engineering team to get the right results through different software delivery iterations.
9. Why traditional approach of SDLC is not suitable for agile development model?
Ans: During the traditional approach we do not have prototyping and iterative development in the SDLC. Using the prototyping the demo can be conducted on a conceptual model of the [new or existing] software. Then the users can visualize these thoughts to extend the demo version into their live software. Then iterations comes into picture as part by part to deliver the working software in the agile development model.
To give you with some more clarity; Agile development model involves continuous construction and delivery using the phases of prototyping and iterative. For each iteration there can be prototype demonstration. Once the demo is approved the iteration will start for construction and implementation. In traditional model if we want to use for prototyping there is a phased prototype model and rapid prototype model are used, once they are approved by users the project team need to choose one of the traditional model SDLC. In this case there are two parts of delivery need to be considered where as in an agile model they are in-built for fast planning and iteration.
10. During agile model what kind of teams need to be formed to initiate the project?
Ans: To work in the agile development project we need the teams in small size, highly talented and responsive people.
11. During agile model how software requirements are considered for delivery?
Ans: Agile team needs to consider the essential, prioritized and deliverable requirements [within cycle time] from the users and construct the software in small increments those are called SPRINTS for delivery.
Next series of questions are continued……… in the below blog url:
You can look for my agile topic based videos:
If you are looking for any guidance please contact me and use the below Vcard:
Agile practices and the importance of Re-usable code libraries for cycle time reductionReusable code usage for Agile iterations planning by examples:
In many Agile transformation sessions the Agile practitioners or savvy’s discuss more on the process related activities rather than elaborating on the technical or software engineering process steps to reduce the cycle time.
At the same time prior to the Agile meetings, activity efforts need to be defined by the designers and the developers. Unless they identify the size of the reusable code components in the applications it is not worth for conducting the Release or Sprint planning meetings for planning of the iterations.
Hence it is the moral responsibility of the technical teams to apply this kind of practices ahead of Agile process or Scrum meetings.
If you are interested to know what reusable code with examples is, this E-Book can be useful. Using this technique, you can plan for code refractor and its cleaning also to get ROI on future Agile iterations. During Scrum meetings, these are the important topics where technical people need to discuss for customer’s ROI acceleration planning and also the cycle time reduction acceleration. The team’s technical capabilities also can be accelerated by following these practices regularly.
I have considered an application example of E-commerce site building for defining the Sprint planning and their iterations. Each iteration has been divided into different reusable code components design parts.
The relevant graphics have been designed and added into this E-book. The software configuration processes with Code Items process have been discussed also.
One can answer the following after understanding this E-Book content:
How to define the reusable code?
How the Iterations can be planned?
Is it possible to demonstrate the iterations cycle time reduction?
What are the entry criteria for Sprint planning?
What are the jumpstart activities required for designers before Agile release meeting?
How to manage the code components with configuration management process?
How to plan the efforts reduction for Sprint cycles?
The proposed or mandatory readers are:
Agile Product Owners
Who all intended to learn Agile Practices?
Visit for Agile interview questions:
Visit for DevOps FAQs: