Ask HN: Backup plan(s) for a CS major?
I'm an undergrad at UC Berkeley, and the reason I chose it was for it's outstanding EECS program (electrical engineering and computer science). However, there are lot of people back home and in other places who view the current demand for programmers as a "tech bubble" and they don't expect the "dreams" of Silicon Valley to last. I know programming itself will always exist, but how do I adapt as/if the bubble collapses? Any suggestions on other career paths that would find my CS experience valuable?
I love programming in itself, but I don't want to regret my major choice because I blindly followed the crowd with no backup plan.
15 comments
[ 3.0 ms ] story [ 50.7 ms ] thread1) The career of programming (specifically) has MANY options which are not concentrated in the tech bubble. I know that is not obvious being so close to the epicenter of it, but 90%+ of professional programmers work, in Silicon Valley parlance, boring companies doing boring things. Banks gotta bank, insurances companies gotta insure, logistics companies have to do something without any convenient verbs to describe it, and all of the above hire (or beneficially hire, via staff arrangements with companies that are uninteresting to the Valley) vast numbers of programmers.
2) The ability to program doesn't hurt your suitability for virtually any type of knowledge work (when compared to a BA/BS in an unspecified field from Berkeley). Most of the time, it will help you, since it gives you superpowers with regards to many tasks you might be expected to do. In my (brief and unlamented) stint as a translator, I shaved months of mind-killing drudgery off my schedule because I have superior options for getting Japanese from Word documents into HTML than copy/pasting one line at a time into Dreamweaver. You may find yourself working in a job which involves analysis or acting upon data, a task at which worksmanlike command of a single scripting language makes you a hero worthy of legend. You will find, for example, that many companies still generate e.g. monthly reports by having people manually collate/screen-scrape-with-their-eyeballs six different data sources into an Excel file which is version controlled by copying with creative filenames onto a shared directory. You might think that somebody capable of programming their way out of a paper bag could do a better job in two day's of work. Some times, you're not wrong.
3) Even if you don't do programming on a day to day basis, knowing how to get what you want out of computer systems and computer people is valuable. Smart people often suck at this. You being a bridge between those smart people and their captive techies can make you indispensable. (For example, I bet Obama would currently kill for one person in his inner circle who can tell the difference between frontend and backend at the moment. That sort of opportunity exists in a lot of places.)
4) Your major matters much much less to your career path than you have been socialized to think, because you have probably not talked career paths with many people outside of academia, who have very skewed views on the matter. Three years from now nobody will care what you studied in undergrad.
In your case, I wouldn't worry too much. Leaving school with a CS degree, you'll have a skill set that many, MANY companies are willing to pay for. The ability to convince computers to do your bidding is a pretty marketable skill.
If you are not familiar with ISO Certifications, this is a Big Deal. If you are familiar with Excel, this is mind-blowing.
And this is just Excel formulas, let alone the ability to write some VBA that does calculations and draws a chart, or a script with a regex that cleans data files, or a basic app for data entry...
If it was the ISO certification you were interested in, there are many certifications related to manufacturing, food & drug, etc. These certify that your company meets various standards, regulations, quality procedures, documentation policies, tolerance assurances, etc. These can result in a ton of additional business, since many customers desire or require them, and losing them is also a big deal. The certifiers audit companies regularly, and having some pretty spreadsheets that show how you are continuously improving and ensuring your adherence to the regs can be very valuable!
1. You would be able to translate between higher levels and the execution team, so if you ever get bored of coding you can have an escape trajectory. HR staff who pigeonhole techies won't have an excuse to stop you from getting into decision-making roles.
2. Most conveniently, if you ever decide to be your own boss, or jump into another field (from making bikes to delivering flowers) you can always do that by starting a business. The degree won't help you much in the beginning, but it will give you a lingo for talking with investors, a network of classmates with money, and the basic skills for keeping your cash in order (you can learn that later too, but having that confidence in your earlier years is helpful).
On the down side, don't get yourself recruited into a warm-body role that gives you a lot of money, teaches you nothing useful, and takes away the best years of your life.
- Most consumer and commercial vehicles to be driven completely by machines
- Machines will become better than doctors at diagnosing patients
- Telepresence software will allow you to travel to any country in the world within minutes
- Everyone will be able to print almost any object they would want in their home
- Virtual reality will become indistinguishable from reality
- Humans will travel to mars
The development of new software will obviously be required for all of the above and this list doesn't even begin to scratch the surface of the ways in which software algorithms will change the world. I can't think of many majors that you could study that will give you the skill-set that you need to create more value over your career than computer science.
PS. Don't call yourself a programmer http://www.kalzumeus.com/2011/10/28/dont-call-yourself-a-pro... (By patio11)
There is no reason why long term demand for programmers would decrease.