Is it possible to build another Infosys, Wipro or TCS now? The answers is yes. But the challenges which needs to be addressed will be completely different. Most of the projects in those companies are maintenance projects. That is someone else built it and we just have to maintain it and this model used to work excellent. So students used to get placed at the end of the third year or starting of the final year. There were not much engineering involved in the work. Still they were called Software Engineers by their designation. So a BCA/MCA or even a BSc degree graduates became engineer. The companies placed themselves smartly. It is similar to insurance agent being renamed as Advisors, carpenters as Wood engineers. Everyone was happy and it brought a lot of foreign exchange to India. Made the Silicon Valley of India a major destination etc.

What is the after effect? Number of engineering colleges increased. Number of students who are getting passed out increased which reduced the number of students getting hired. It is not because there are not enough opportunities in the market but the quality of the students have reduced so much that companies are heavily relying on experienced resources. The era of maintenance projects are slowly getting over as India is loosing its edge as low cost labour and good quality. We are facing tough competition from Bangladesh, Sreelanka, Philippines etc. The students of engineering colleges must understand that the old way things won’t work anymore.

Institutes like baabtra play a major role in transforming the graduates of any stream to a software engineer.

The clients are expecting much more from their vendors. It will have a cascading effect on the employees who are getting hired. If the service provider has to deliver the higher expectations of the client, he should get more from the employees.

New technologies are evolving so fast that a developer must be able to work on different platforms. All these things brings a lot of pressure on the students and who are newly employed. In my opinion there is nothing people should be worried about if they are ready to change the way they were looking at programming.

Now most of the training institutes are teaching programming languages to get the things done. This was fine until 2008 as the expectations of the clients were less and we had less competition from other countries. We could quote two weeks for a work which could have been done in 2 days. But even the clients have become start.

So we need engineers who can not only get the things done in a language which they have learned but implement the business solution in the best technology using better algorithms that can be maintained easily. The engineers should be able to decide which technology they should be using for the fast and best implementation.

All of these requires the software engineers to change in the following way.

1. Engineers must not say that I am a .NET or Java resource and I will work only on a particular technology.

2. Engineers must not say if it was a particular language I would have implemented it excellently. I can try in this language but I can’t guarantee performance.

3. Now the electronic data that is getting added each day is increasing exponentially. So you must know how the database works and how effectively data can be stored.

4. Because of the same reason of third point, the efficiency of algorithm are going to matter a lot. Earlier we could just write codes that will get the things done. Even though internet speed has increased, the data has increased so much that we will need better algorithms and code that will not overload the server.

Looks like a software engineer need to change a lot of things. But the fact is that it is just a change in the approach and start using your brains rather than doing things mechanically. If all the engineering colleges and institutes are ready to change their approach on software engineering is taught, we can make real software engineers and not people who just do what others doing mechanically. We can create engineers who will always look for improvements in the process. If they don’t change we will keep watching how the sand under our engineers are washed away and how they end up loosing or not getting jobs. This will eventually affect the engineering colleges in India as young generation will start to believe that there is no point in doing software engineering.