Specialising as a Software Dev and Learning skills

Ancalagon

Honorary Master
Joined
Feb 23, 2010
Messages
18,207
Reaction score
3,678
As per the title.

How do you guys handle specialization in your careers? Do you specialise, and if so, how?

I don't know if I am right but I have heard that in typical scrum settings, specialisation in team members is discouraged because the idea is that anyone can do any work. But personally there is just some stuff that I hate doing, that I want to stop doing.

And, bonus question. Are you currently trying to learn new skills and do you feel that you will be given an opportunity to use the new skills that you are using where you are?
 
It might be the unpopular opinion and against all the conventional wisdom but being a jack of all trades when it comes to software development seems to suit me well. If you specialise you can earn massive money but then you need to both really enjoy the specialisation as well as forecast the lifetime of that specialisation so you don't get caught with your pants down 5-10 years down the line and become obsolete. I suppose with specilisation your glass ceiling i higher but being able to do a lot of stuff makes me far more employable or at least makes it easy for me to get a job without much hassle.

Unless the company really needs a specialist for something very niche, a well experienced developer that can do a lot of different things will always be better. Would you rather have 2 devs costing a million a year, each with 3 special skills, or 1 dev costing R700k a year that has 10-15 skills and can pick up anything required to a decent level without major learning/studying. A generalist that can quickly pick up what is needed and run with it so that they can fill any gaps that come up will always be valuable.

I find that almost every place I have worked has always required me to either use some sort of new tech or library I haven't used before or the team decides to try new things so that we are always learning and keeping ourselves current. As soon as you stop learning what is hip and happening in software dev you become dead in the water. I saw this with my brother who worked at a bank for a few years. They only required him to do a very specific set of things on a specific set of tech. He was heavily caught of guard when he got a new job and found that he had to quickly get across tons of new tech/libraries that were coming out, as well as those that many people had learned up to 5 years prior.
 
I hear you, I just find that I hate front end web dev. I hate hate hate Javascript, CSS, HTML and all that stuff. Respect to people who work with it, but if I never have to work with it another day, I will be happy.

Yes, for most companies it would be better to have a couple of general purpose devs rather than specialists. Most companies have no need of specialists. I have decided that I want to be a specialist and I want to work only for companies that require specialists. The salary is a nice perk, but mostly I just want to enjoy my work.

I enjoy backend work a lot more than front end, and the work that I tend to enjoy most is the really difficult mathematical/statistical/technical programming. Which incidentally is what I am studying and wanting to go into, so I am making a plan.

I just wanted to hear from other people what they thought about specialisation and learning on the job/career switching.
 
I hear you, I just find that I hate front end web dev. I hate hate hate Javascript, CSS, HTML and all that stuff. Respect to people who work with it, but if I never have to work with it another day, I will be happy.

Dude! serverless framework + lambda + node.js

Though you could go with go (haha) or python too...
 
I am learning Python and will probably be doing more Python in future.

C++ would be nice actually. I miss working in C++. Believe it or not.
 
Someone in my company said I should try achieve a 'T' model. Where the top of the 'T' is a general understanding of a wide range of technologies, and the part going down is a deep understanding of one particular skill.
 
Where I've worked generalists are always useful, but our company's edge comes almost entirely from the specialists. It is worth noting that the term "generalist" and "specialist" can take on different meanings in different scenarios. None of our generalists have ever done any front end or back end web development. I am sure that they could learn it, but in reality, even our generalists are highly skilled numerically aware, system skilled, C/C++ programmers.

We don't buy into a "anyone can do any work" engineering methodology - if this is true, it either means that one's hiring criteria is ridiculously high, or that one's company isn't really doing anything interesting.
 
I just became specialised in all areas of software development that I am involved in, easy :sneaky:
 
How do you guys handle specialization in your careers? Do you specialise, and if so, how?
It really depends on the individual and the speciality. Not everyone will either be interested in a particular speciality and neither is everyone capable. Capability is a broad term that touches not only acumen, but also character; not everyone, even with a matching acuity will necessarily want to or have the character required to specialise.

I don't know if I am right but I have heard that in typical scrum settings, specialisation in team members is discouraged because the idea is that anyone can do any work. But personally there is just some stuff that I hate doing, that I want to stop doing.
Some generally skilled sectors are far less accommodating of team member specialisation beyond the more typical end user groupings; and they certainly would offer far less i.t.o. a challenge for individuals that had either the acumen and / or desire to specialise.

And, bonus question. Are you currently trying to learn new skills and do you feel that you will be given an opportunity to use the new skills that you are using where you are?
This like many other professions is not a preset environment; so it'd be silly to think we could acquire any form of knowledge that'll allow us to ride the wave from there on in. So yes, constant revision of skills is not only required; I'd argue it forms a big part of the differentiation.
 
My two questions:
What are you good at?
Where do you want to be/go?

That will define what you generalize or specialize in.
 
It just feels like if you make the mistake of getting into general software development early on in your career, it is difficult to break into more specialised software development.

By general software development, I mean CRUD operations. Update the customer record. Display the account statement.

By specialised, I mean something that requires either advanced programming skills or more than just programming knowledge (such as scientific or financial knowledge).

I will get there, it just means I need to be very careful about my next role.
 
It just feels like if you make the mistake of getting into general software development early on in your career, it is difficult to break into more specialised software development.
Certainly not. Why don't you as part of your personal / private time studies tackle some of this; at least that way you'll have better insight re any choice of specialisation.
 
Certainly not. Why don't you as part of your personal / private time studies tackle some of this; at least that way you'll have better insight re any choice of specialisation.

I have been studying data science for the past year and I have recently began studying towards a graduate diploma in maths (starting with 2nd year maths). I feel like I need a better mathematics foundation for some of the programming I want to do.

I suppose I'm just frustrated that change in my current role has been slow - in fact I think I've been getting further away from what I want to do. But, I am about to make a big change that will get me closer to what I want to do.

I just hope that a company is willing to give me a chance even if I don't have any commercial experience in this stuff. I'm hoping that the commitment I have shown to acquiring the skills I need will help me a bit.
 
Top
Sign up to the MyBroadband newsletter
X