Hello Programmers without Masters degree, what are your future plans?
If you're a programmer without masters degree in computer science, how are you going to be competitive and keep progressing in future. For example, I have an undergrad degree in computer science, been programming for 7 years. Not sure if I can keep writing code till 60 and still find jobs as well as make good income. I fear I'll be run over by the new generation.
24 comments
[ 366 ms ] story [ 2104 ms ] threadNot many people can (or do) write code until 60. Most will become managers. If you don't want to be run over by the next generation, develop and manage the resource that you have that they can't catch up with: experience.
You can develop that resource by doing a wide variety of work or by focusing on a niche. I've seen developers who only fix bugs in ____ language. Or you can work on a wide variety of projects, in a wide variety of roles, and do consulting.
Unfortunately, most coding is treated as a commodity by the business world, and the younger devs have a cost advantage over you.
I have an experience advantage of being able to ship working software that actually meets requirements. Unlike many younger devs.
The reason I ask is that I am a self-taught web developer (BA in English & Classical Studies) considering getting a master's degree in computer engineering. I am not certain if I do go down that road that I would want to stay in web development, but I am rather passionate about the web so I would not want to rule it out.
If you don't have a CS degree, getting a more technical degree couldn't hurt you, but it's more about the opportunity cost.
The masters degree is certainly not that useful for Web development, but it's a lot of fun and was pretty enjoyable to interact with smart people. It's also helped to have more formal learning in things like compilers for the few times I've needed to write a parser, etc.
There are absolutely jobs where it would help, like research. If you wanted to work on the super-technical stuff at Google or Facebook, like developing new languages, you'd probably need that MS.
But generally speaking, employers care exclusively about your experience (partially because there are so many self-taught people that do good work), and a Masters just says, "I'm going to demand a higher salary".
On a semi-related note, I'm self-taught, like you are, and I considered a Masters. I now laugh at that idea -- I don't know even a tiny fraction of what's needed to get a Masters. It was very humbling to talk to people with CS degrees and hear all the things they learned.
When you miss out on an undergraduate CS degree, you miss a lot of theory and math. Jumping right into an MS program would be incredibly difficult unless you're a prodigy of math and logic (and have the time to spend on catching up).
(None of that is to say that your typical web development job requires a CS degree at all. We use high-level languages and, oftentimes, widely-used, lightly-customized software.)
I plan to broaden my horizons with philosphy and business studies and hopefully mitigate institutional boredom by growing my own side-projects until such time as this overtakes my salary.
Can't really see a masters being particularly useful.
As you get older/more experienced, it becomes harder to find jobs. When "senior developer" means 5-7 years of experience, what do you do with 30 years? It gets hard to find places that will pay for that experience.
I've found, though, that there are jobs. You won't be switching jobs every 1-2 years - more like every 5-10. "Big engineering" places seem to value the experience more than, say, web places. (This may be just because I'm in embedded systems - there's not much use for that in web services.)
Your advantage isn't how fast you can crank out lines of code. It's how fast you can deliver real value to the business (what else are they paying you for)? Along those lines, one of the most valuable things is the bugs you don't write and the bad design decisions you don't make.
That said, I'm currently working on telephones for the hard of hearing, and they're internet-connected, so maybe my current job is in IoT...
This point is very important yet elusive. I do contract development, and it's often difficult to get clients to understand the significance of this point without sounding negative or exaggerated. It would be nice if maybe I knew of some formal studies done in this area to give the clients a more substantive awareness.
It's curious that inexperienced developers are bad for clients while inexperienced clients are bad for developers. Perhaps it takes experience to appreciate experience. At the same time, inexperienced developers may go well with inexperienced clients since they can learn together -- albeit with plenty of inefficiency.
So University alone determines your ability to succeed? A better question to ask is, "How do I make credentials less important?" (hint: performace), read "After Credentials" ~ http://www.paulgraham.com/credentials.html
Should read performance.
You may be passed over for jobs by hiring managers who don't understand the value of experience. You don't want to work for them anyway.
I'm less than a decade away from 60. And I'm not worried in the slightest.