Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is specialization necessary in software development [closed]

I have graduated from my university almost a year ago. Since then I have worked with many different technologies, such as PHP, JQuery, ASP.NET, C# etc. Recently I have switched to a company where powerbuilder is being used for development.

The problem is that I haven't mastered any of the above languages. I can do stuff with those but when it comes to the complex tasks I often struggle with it because I don't have enough deep knowledge about it. After looking at powerbuilder for a few days I sense that this is going to happen again because most of the application code have been done using some sort of library which requires some advanced level of skill on powerbuilder.

My question is, is it OK for me to work on different technologies without mastering a single one of them?

like image 302
HEAVEN'S TEAR Avatar asked Nov 04 '10 08:11

HEAVEN'S TEAR


People also ask

Should you specialize in one programming language?

The reality is that very few programming jobs require you to know only one language or framework—even if you know it through and through. That's why focusing your attention on several of the most popular languages is a better approach for the aspiring programmer.

Do programmers specialize?

The computer programming industry is diverse and hires professionals who have a range of skills in various specializations. Those who work in computer programming often choose a specialty that they apply in their preferred industry, such as health care software development or network administration.

Do you need to code for software development?

For a career in software development, you'll need a solid foundation in programming languages. Four you might consider mastering include Java, Python, C++, and Scala. Java is an all-purpose programming language used for developing server-side applications.

Is software development a field?

Software development is an incredibly in-demand and rewarding field to be a part of in today's competitive job market. In fact, it was recently declared the #1 best job in the US, according to job demand, salary expectations and career reviews.


1 Answers

If you choose to specialise the you are taking an opportunity cost by making yourself unavailable for other types of work. This is good if you can be confident that your chosen specialisation will last for a reasonable length of time. However, you can guarantee (along with death and taxes) that software will change. You will always be required to learn some new framework or approach in order to remain current.

So to avoid finding yourself at an intellectual dead end (are transputers still in use anywhere?) you should adopt a doctrine of constant learning. Learning is usually fun and almost always leads to a joy of discovery of some new tool or design. And never keep this knowledge to yourself (it only has a half-life of 18 months anyway). Share what you have learned with others.

So to answer your question: don't specialise.

like image 157
Gary Rowe Avatar answered Sep 30 '22 01:09

Gary Rowe