Forgot your password?
typodupeerror

Comment An industry wide dilemma (Score 1) 569

I'm a mid level developer and I can tell you honestly that throughout your career you will be required to learn more computer languages than you will know what to do with. This will be a necessary skill that you will need to be able to take on, and this wont stop.

What I do recommend is that you have a Good understanding of each language and Specialize in a chosen language/platform. But you will have to be willing and open to learn new languages otherwise you will only become stifled, pigeonholed and you will not be able to progress to a senior level.

In a job interview you will be looked at for your specialization but hired for your ability to learn other languages to a professional level.

I'll give a real world example.

At University I learnt: C++, Java.

In my 1st Job: C++, Perl, BASH scripting

In my 2nd Job: ASP 3.0, C#, .NET 2.0, ASP.NET, VB6, Javascript

In my 3rd Job: C#, .NET 3, F#, Ruby, Ruby On Rails, Java (inc Spring, Cocoon, Flowscript), AJAX ,Design Patterns (MVC, Strategy, Repository, Flyweight, Service Provider, Abstract Factory, Factory), Mocking Frameworks, Test Driven Design or Behavior Driven Development.

Each of these languages all have their pros and cons. They're all tools, a means to an end. A professional can learn a language in a matter of hours, mastery of course takes years.

The reason that you will NEED to be able to be adaptable to learn a new language is that everywhere you go you will need to deal with Legacy Software which will be written in a language you don't know.

The counterpoint to this is that Software Engineering is a long and difficult path, it is very much like studying to become a Doctor, only we don't have a governing body like the AMA.

As a graduate you will be equivalent to an Intern. You won't be picking up a scalpel until you get a few more years of assisting a Surgeon. Once you've completed your "Apprenticeship" you will be qualified to make architectural decisions.

This is a fundamental problem with our industry, however it can be extremely rewarding & fun if you can work with these issues. Never stop learning & never stop having fun.

Slashdot Top Deals

"Those who will be able to conquer software will be able to conquer the world." -- Tadahiro Sekimoto, president, NEC Corp.

Working...