I am a software engineer having 9 years of experience. I have done graduation in Finance and after that I did PGDCA in regular in part time. After that I did MCA from distance learning. When I was in final year of MCA I got job in my current company and since then I have been working with this company. I haven't changed any company till then. I haven't done any certifications as well.
In this company I have mostly worked on Windows Application in VB6.0. I have some experience of C# and WPF and that is too in Windows Application. Our company does not follow any processes and procedures. So I don't have much knowledge of processes and procedures as well.
Now my question is after spending 9+ years in one company what would be my job prospects? What technologies should I look for? What certifications should I go for to improve my job prospects. And what other things you suggest that I should do.
Now I have planned to switch company but I am getting a starting point from where should I start.
Sainath's Advice on Sunday, March 11, 2012 :
Let us try and do an evaluation of where you are right now in your career.Positive points:
- Since you have worked extensively on VB6.0 your programming style will be attuned to the event-driven Windows programming style.
- Your programming skills should be good - as VB6 based Windows applications are usually rich in features and involve good programming logic
What are the available options?
- In case you have never worked on Asp.Net or for that matter even classic Asp, you will need some degree of mental shifting in terms of developing web applications.
- Also, in the current era, a lot of emphasis is being placed on design and architecture which was limited to tier based and COM based systems in the VB6 world.
In case you do target the WPF area what technologies should you master?
- 1 option is to devote time to learning to develop web applications - to some extent you should do this atleast from a knowledge enhancement perspective. But this may not be the best option forward. This is the era of the browser and most applications, web-based and intranet applications operate mostly on Asp.Net. If you do choose to go down this path you will need to spend time in smaller companies till your skills become really good in this area.And a lot of groundwork will be needed to learn building web applications.
- The 2nd option is the more specialized option of building skills in WPF. The volume of opportunities is lesser in WPF. At the same time, skilled persons are also not available easily. There are product development companies who do use WPF but you need to hunt for them.
- The event-driven programming model is something you should ideally let go of now - as the focus on architecture and design has grown greatly from the VB6 era
- You should learn patterns like MVVM. You should start with MVC, MVP and move on to MVVM.
- Further on, you could look at building container applications in WPF using the Prism framework
- You could study MEF as a technology base for building container applications.
You see, these are niche specialized skills which are in demand in the WPF space as it is difficult to find people who know this in detail.
Hope this has provided food for thought.