Categories: FreshersSoftware Engg

Preparing Fresher Developers for Billable Projects

Are you one of those project stakeholders/trainers who have been assigned the task to make the fresher developers become billable, meaning, customers paying for their time? This is a tricky one to crack as it is difficult to convince customers that a fresher developer would be able to deliver a great quality code given the lack of experience. As a matter of fact, fresher developers take pride in becoming billable after the training is over owing to the fact that they would be able to start learning from day one, prove his worth and, organization would be able to make optimum usage of his expertise.

So, how do you crack this code? Lets take a look at some of the topics that you would want these freshers developers to have a decent knowledge in some of the following areas:

  • Programming Languages that they have got trained in. This can be accomplished by having these freshers work in a couple of sample projects with similar configuration, timelines etc like a real-life project.
  • SOLID Principles: If working with object-oriented programming languages, the fresher developers are expected to know all of the SOLID principles, especially, Single Responsibility Principle.
  • One or More Build Tools: The fresher developers should definitely have decent knowledge in working with one or more build tool. For example, for Java projects, one would want to know at least Maven and ANT.
  • Software Quality Characteristics: The freshers developers should also have a good understand on key software quality characteristics such as maintainability, usability, efficiency, security, reliability etc. The key thing is to have them relate these characteristics with coding practices.
  • Source Code Repository: Fresher developers should be made to work on a common code base within the team and not work on their individual code base. They should be able to commit/update their code in code repository such as SVN, CVS etc. This is how any real-life projects work.
  • Logging: It may be nice idea to have these developers understand the usage of some of the logging tool and stay away from printing out the logs in console.
  • Unit testing: It may be good idea to have these developers understand how to write good unit tests from day one.
Ajitesh Kumar

I have been recently working in the area of Data analytics including Data Science and Machine Learning / Deep Learning. I am also passionate about different technologies including programming languages such as Java/JEE, Javascript, Python, R, Julia, etc, and technologies such as Blockchain, mobile computing, cloud-native technologies, application security, cloud computing platforms, big data, etc. I would love to connect with you on Linkedin. Check out my latest book titled as First Principles Thinking: Building winning products using first principles thinking.

Recent Posts

Coefficient of Variation in Regression Modelling: Example

When building a regression model or performing regression analysis to predict a target variable, understanding…

1 week ago

Chunking Strategies for RAG with Examples

If you've built a "Naive" RAG pipeline, you've probably hit a wall. You've indexed your…

2 weeks ago

RAG Pipeline: 6 Steps for Creating Naive RAG App

If you're starting with large language models, you must have heard of RAG (Retrieval-Augmented Generation).…

3 weeks ago

Python: List Comprehension Explained with Examples

If you've spent any time with Python, you've likely heard the term "Pythonic." It refers…

3 weeks ago

Large Language Models (LLMs): Four Critical Modeling Stages

Large language models (LLMs) have fundamentally transformed our digital landscape, powering everything from chatbots and…

4 months ago

Agentic Workflow Design Patterns Explained with Examples

As Large Language Models (LLMs) evolve into autonomous agents, understanding agentic workflow design patterns has…

4 months ago