Specialize. I was stretching myself thin, trying to do and learn everything. I found an interest in building specifically for Shopify and jumped on the opportunity to become a Shopify Expert, and the rest is history. Specializing in general allowed me to really hone in on the skills required for the tasks at hand and let somebody else with a stronger interest in other areas excel at those.
Quit my corporate job to do my own thing. I was working for the government as a developer, and there were so.many.hoops to jump through. It took an incredibly long time to get anything done, to explain why I needed specific permissions on my computer to do my job. (For example, I had to complete a 9-page document as to why I needed something other than Notepad for coding.) I waited until I had a solid line of work coming in (in other words, I found myself a retainer client) and then put in my two weeks. It's been a year and a half since I started working 100% for myself and I couldn't be happier with my decision - it came with a significant pay increase, complete freedom over my schedule and selection of projects, and most importantly, really proving to myself that full-time freelancing is a 100% attainable goal.
The difference is very distinct: narrow experts know well how to use something produced by those who rejected to stick to one single technology.
Former are frequently more satisfied with their salary, latter are almost always more satisfied with their job.
Interesting, I've done pretty much the opposite of specialization to find my success. Isn't specialization in too much danger of becoming obsolete?
This was so great to hear. I'm in a similar boat - currently working 2 government terms and really wanted to specialize in mobile dev & building for Shopify. In my own time I'm torn between so many languages I "should" learn - when really I know what I am leaning towards and enjoying, so I should focus on that for now.
Anyways, I'm late to the game but early in my experience, so I know I have a lot more to learn! Just good to know that I can sit down and focus on something, even if it's not related to my job at the moment. Spoiler: really not enjoying my co-op placement.
I also think specialization is a key to success! It is really easy in tech to jump from framework to framework, language to another language, but we fail to realize that companies don't need jacks of all trades, they need the best doing their jobs. Since I focused on becoming a great Android developer I never had any problems finding my next job.
Until they have a new generation of FancyPhones invented and Android became a history.
You can tell that to COBOL developers.
But really, some of the best Android developers I know where J2ME (Java for "feature" phones) developers before, and some of the best Flutter developers I know where Android developers.
Really, it does not matter. If you think your current tech stack is the best, stay with it. If now, specialize in something else. Just try to be the best dev you can.
+1 for Specializing. Not only because expertise usually can lead to growth in your career, but also because specializing hopefully means you are more interested in that area.
Disagree about specializing. Sure, you need to dive deep in some areas, but a generalist will always get jobs, no matter where the industry is moving. And most of the big companies have realized that it's more effective to hire generalists.
Freelancing is a great way to get around and learn a lot. I did it for 10 years. But eventually, the experience I gathered that way helped me land good corporate jobs, and I'm now very happy at your favorite Seattle-based eCommerce giant, getting a decent salary and with a nice career laid out in front of me. Corporate doesn't have to suck. If it does, you're in the wrong company (or just department). That said, perhaps I'll freelance again in 5 or 10 years. Who knows.
Let me provide a counter-argument to 1, because so many people love it: if you specialize, you narrow down your options. So, you're the world's most renowned expert in MUMPS? Congratulations, but almost everybody stopped using it and there are a total of 10 companies you can work for in the entire country, only one in your city. Hope it doesn't go under, or you don't get into a conflict with you boss.
Best Symbian developer in the country? Sorry, Nokia almost went bankrupt, and switched to Windows anyway. What, you thought that'd never happen?
The narrower your specialization field, the more at risk you are that the entire field will be disrupted, and the less jobs are available to you. Better hope that you picked your specialization well! And remember, we all suck at predicting the future. Yes, even you.
Specializing doesn't necessarily mean down to one language.
You could specialize in a broader topic that's still focused, like mobile development, or handicap-accessible websites, or web security. A specialty like one of those seems more marketable than saying "I know language xyz" anyway.
Interesting point - but I'd argue that being a specialist shouldn't mean tying yourself to one technology forever.
I've been working in web content management for sixteen years now, and am on my fourth major CMS. I (and the company I work for) have "specialised" in all of them for a while, but we've been flexible enough to jump ship to different technology when we see one system getting overtaken or when our market's needs change.
I'd also make an argument that demonstrating that "ability to adapt and learn new stuff" skill is a really good thing for your CV alongside "really knowledgeable about something". IT changes fast, and good employers should value people who can understand and adapt their skills to those changes.
Specialise. Absolutely agree. Narrowing focus down and aiming to be the best I can be in a specialised field of knowledge. Not being ignorant to "everything else", keep an eye on things surely. Like switching to GIT when the time came, keeping up to speed with new major development trends. But always keeping an eye on the ball though.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.