We’ll wrap up our 11 Questions for a Better Developer Onboarding series shortly, but today I saw a great question on the SuiteScript subreddit posted in response to a recent episode of the SuiteScript Stories podcast.
The original thread and comment are here.
To preface, I am a firm believer in narrow specialization as the path to higher profitability and deeper, more valuable expertise
for both developers and small development firms. In the episode, I argued that a tightly focused specialization is also a good defense against the commoditization of software in professional services.
The question from u/palavi_10:
but like doesn’t is reduce your versatility, and also wouldn’t it reduce your chances in the world outside of the specialization
Does specialization reduce your versatility?
If we were having a conversation directly, I’d ask to learn more about how you define versatility in this context. There are many dimensions along which one might "be versatile" – e.g. perhaps you know many languages or frameworks or perhaps you promise to wear more hats than just coding. We’d have to decide how we define versatility, then decide whether that versatility is even a good goal to strive for.
Does specialization reduce your chances in the world outside of the specialization?
In some situations, yes absolutely. In the same way that choosing to specialize in software development has hurt my chances of becoming the director of photography on a major film, choosing a deeper specialization will narrow the universe in which your skills and knowledge are useful. My example is a bit unfair of course as the skills and knowledge in those two areas are dramatically different, so let’s bring it closer to home.
Does choosing to specialize in NetSuite hurt your chances as a Sage developer? Yes, to some extent I imagine it does. However, there will still be a lot of portability in the knowledge you gain about working with businesses as there is more intersection between businesses that run on Sage and businesses that run on NetSuite than there is between directors of photography and software developers. Personally, I was hired as a NetSuite developer not even knowing what NetSuite was. Depending on the switch you try to make, the more crossover there is, the less impact on your chances.
In the episode (and elsewhere) I argue that specializing in NetSuite isn’t specialized enough. Does specializing in Manufacturing companies running on NetSuite hurt your chances with Software companies running on NetSuite? Yes, but probably only a little bit. How about switching to a Manufacturing company that runs on Sage? Again, yes, and probably only marginally more than the previous example.
Will you be able to command the same expert-level fees/salary in making either of those switches? Almost certainly not, but you will have a lot of translatable knowledge as there will be a huge amount of intersection between the two types of businesses. Does that same specialization hurt you in trying to become an SFDC developer for knitting shops? Yes.
We can’t all do everything for everyone. If you picture the whole universe of possible skills and knowledge as a gigantic Venn diagram, we all have to draw our own boundaries around the skills and knowledge we’re willing to invest in and develop with our limited time, and those boundaries will necessarily then exclude the rest of the universe.
The larger your boundaries are, the less specialized you are in whatever area you’ve chosen, and the harder it will be to build meaningful expertise, and the less defense you’ll have against commoditization of that area.