22 ms·
This Is 2016 Not 2012
- maxklein 14y agoThis problem will be faced by many developers soon. The Internet is huge. Very large. The big companies are going to be dealing with huge data. You'll need to understand algorithms and math, and frankly, this stuff is a bit difficult to learn on your own. I thought I knew it all till I went into the algorithms class - that when I realized that not only did I not know it all, I was not as smart as I thought I was, and I would never have had the motivation to go through with this if I had not been forced to. And that goes for many developing. Programming is a scarce profession now, but the simple stuff will soon be done by too many people. Software will become a real engineering task. In 20 years, the age of the code monkey will be gone.
- kolinko 14y agoI think it will be the exact opposite. As computers take over more and more jobs from us, we will need less "office workers" who know how to shuffle documents around, and more workers with programming skills. You want to be a mathematician? You need to know how to program. You want to be a "secretary", you need to be able to dig through your boss's e-mail using regexpes when he needs to find sth, you are a dentist - you will install your own scripts on the website because you know how to do it from high schools. In 2016 (or 2012) it won't be "oh, we need more skilled programmers", it will be "sure, you know programming, everyone knows, but what really you know?". Programming will have the same place on CV like "MS Office", or "keyboard typing" has right now. No big deal if you know it, but much harder to find your job if you don't. Of course there will still be place for real computer experts - algorithm designers et al, but the basics will be known to more and more people.
- fooooobar 14y agoPeople have been saying this for 15 years now, at least.
- calebmpeterson 14y agoSo education and the availability technology will eventually result in many people with basic programming skills will result in not only computer literacy in the "I can use MS Office" sense, but in the "sure, I can hammer out a Python script to get this task automated or sift through that data" sense. Is there some sort of disruption of (basic) programming skills coming the way blogging has disrupted journalism?
- garethsprice 14y agoThis isn't going to manifest itself as more people knowing how to program, though. Easier interfaces and smarter searching, but not programming as we know it. In 1980 you'd say that in 20 years the average office worker would be performing calculations on thousands of rows of data, generating charts, typesetting documents, creating full color presentations, doing business with clients in multiple continents and they'd wonder how people would cope with the increase in cognition required to do all that. But it's just button-pressing for most people. In 2016 they'll say "we have a database with 4 billion data points and we need to infer customer behavior patterns from it". You'll say "Sure.", sit at a desk, click "Segment", click "Demographic: 18-21", click "Intersect", click "Products", click "Make Recommendations", click "Apply" and a discount coupon for "Justin Beiber's Comeback Tour" will be beamed directly into the eye sockets of anyone who bought canned salmon last fall. I don't see a society where 80% programs, I see a society where 10% builds things for the other 90% and a huge part of the middle class will be automated out of existence. This, to me, is the big issue that will shape this generation and the next.
- joss82 14y agoHave you written a full blog post or article on the subject by any chance? I'm really interested.
- hogu 14y agohttp://www.economist.com/blogs/babbage/2011/11/artificial-intelligence http://www.economist.com/blogs/babbage/2011/11/artificial-in... and 2 books referenced in that wrticle http://www.thelightsinthetunnel.com/ http://www.thelightsinthetunnel.com/ http://en.wikipedia.org/wiki/The_End_of_Work http://en.wikipedia.org/wiki/The_End_of_Work
- joss82 14y agoThanks.
- alexanderberman 14y agoI second the need for a blog post on this!
- encoderer 14y agoGive this test to the next 5 random non-technical friends and family you talk to: A = 1 B = 2 C = 3 A = B What does A equal? I'm not saying people can't be taught. But think about how big the workforce actually is, think about how widespread MS Office skills are. For every power-user analyst and project manager that's really taking Excel out for a workout, there are 10, 20, 50 people who use Office in every day non-challenging tasks. I've given that little test to my MBA wife and a GP family member and several other people. Hardly anybody gets it right. Edit: The x-factor here, btw, that determines whether or not somebody understands it, is whether they see that assignment is happening, not some sort of "wha? 1 equals 2? what is that?" And those that didn't just get it, even after I explained assignment they were just as puzzled. Just the concept of variable symbols confused and (i presume) disinterested them. What we do here everyday, this is difficult, challenging stuff, that I don't think most the workforce will ever understand. Instead, people like us will be busy for decades to come, building tools so they don't have to. There was a time when machines were new concepts versus simple tools. You could say, in the early stages of the industrial revolution, that soon everybody would understand and be able to fix their machines. But machine complexity has out-paced the desire and ability to learn those skills. Software is no different, I don't think. Edit Two: http://www.codinghorror.com/blog/2006/07/separating-programming-sheep-from-non-programming-goats.html http://www.codinghorror.com/blog/2006/07/separating-programm...
- deleted 14y ago[deleted]
- hdevalence2 14y agoI don't think it's unreasonable for people to assume that = means equality, not assignment. Edit: In particular, the link posted in the second edit has a rather poor test using a and b, because it uses = in two different ways with no indication that the meaning of the symbol has changed. Maybe the problem with the test isn't just the people, it's the sloppy notation that assumes people with no programming background are able to infer when we mean equality and when we mean assignment.
- encoderer 14y ago
- neilk 14y agoOh no, it will be cyclical. Programming is all about attaining higher abstractions, hiding more technology under a simple interface. Every now and then some new set of abstractions will be useful enough that we'll need a bunch of people to explore a field of opportunity. These explorers are called entrepreneurs. Maybe in 2016, you're going to need deep credentials to be a useful web dev, but none whatsoever to start something useful with 3-D printing. EDIT: that said, nothing makes you more employable than knowing things at a deep level. A friend of mine, a former Plan 9 kernel contributor, quit the tech industry after the first bubble to become a wildlands firefighter. Returned to the tech industry in 2008 and resumed being a highly-paid infrastructure geek like nothing had happened.
- dshipper 14y agoI really agree with this.
- sophacles 14y agoI'm of two minds on this one. Part of me agrees completely with what you say. Further tools will exist that automate a lot of what the code-monkey does. The level of work done by a lot of us will be push-button, or "plug these couple of things together". On the other hand, in 1998 as a nerdy guy getting out of high school, with minimal html, javascript and programming experience, and running linux on a pentium pro I faced a big choice. I went to the local ISP to pick up a "real modem" (vs a winmodem) to connect my awesome unix box to the internet. The guy there asked why I wanted these modems vs going to circuit city for some amazing sale they were having for a faster winmodem. When I told him I was running linux I was offered a $40K/yr job on the spot - just for getting linux installed on a computer and understanding the basics (quote "we can teach you anything else you need to know, you got the spark"). I was 18, and that was a HUGE deal. Anyway this wasn't uncommon, at the time wired was running stories about "HTML factories" where people were making pages and pages by hand all the time. Minimal programming skills got you a job. Some of this was just normal boom-time labor shortage. There were lots of stories about how after the crash these guys would never work again. Some aspect of this was true, but some of it was bunk. The 2000 version of this story would be "sure you can do html, and you can do CGI, and you understand http headers and can whip up a server, but we need people who understand SQL and how to work with record objects and how to do live updates to a system, stuff you need a real degree for. It's 2005 not 2000" So basically I am suggesting that while Rails may be a non-skill (like HTML has become) and maybe good REST APIs will be auto generated, and some Backbone.js future version or successor will do most of our tricky js stuff, there will likely be good toolkits that allow people to plug together data-mining and data-management without needing super deep algorithmic understanding, we are already seeing the emergence of such tools. So the other part of me disagrees, the code-monkey will be needed, just that they will be putting together different bits than they are today.
- uxp 14y ago> So the other part of me disagrees, the code-monkey will be needed, just that they will be putting together different bits than they are today. It seems to me the Hiring Manager in the story was fishing for a jack-of-all-trades kind of applicant. The interviewee was obviously a web developer, but the position to be filled was a data analytics job. What difference does it make if Rails/PHP/Node.js/Backbone/etc become commodity jobs? In order to get the raw data that requires complex and high speed algorithms to parse in to useable data, you'll still need a website, built by a rails/backbone code monkey and a Photoshop designer and with the help of a decent DBA, at the very least. The data position, if it ever comes to it, will just be another job type that a well rounded development team will need to fill, not a replacement for everyone else on the team.
- guard-of-terra 14y agoMath is overrated. Nobody really needs math; if you find yourself needing some math you're probably reinventing some kind of wheel. Same with algorithms. How do you deal with huge data: you just do. There are tools for that, and you apply those and perhaps make new tools yourself, but math and algorithms tend to never enter the equation.
- meej 14y agoI am reminded of Jeff Jonas' "Data Beats Math": http://jeffjonas.typepad.com/jeff_jonas/2011/04/data-beats-math.html http://jeffjonas.typepad.com/jeff_jonas/2011/04/data-beats-m...
- srconstantin 14y agoWho do you think makes those tools?
- guard-of-terra 14y agoNot computer scientists. Programmers themselves, based more on their experience than theory.
- yxhuvud 14y agoInternet may be a huge place with a huge amount of developers. It is also an even huger place when it comes to demand of people that can do simple stuff.
- PezCuckow 14y agoNot entirely sure I get this!
- jacquesm 14y agoIn four years you will. If not before then.
- peterwwillis 14y agoThis reminds me of the shock I got when interviewing at big tech firms for lowly-sounding "scripting" positions, where most of the questions required a CS background. If only I had gone to college...
- guard-of-terra 14y agoDid the questions check for knowledge or a piece of paper? If former, go get some. No excuses! If latter, find a way to print yourself one.
- dysoco 14y agoYou just desmoralized me even more to study CS.
- deleted 14y ago[deleted]
- architgupta 14y agoI am reminded of Steve Yegge's excellent post on "Math for Programmers" : http://steve-yegge.blogspot.in/2006/03/math-for-programmers.html http://steve-yegge.blogspot.in/2006/03/math-for-programmers.... (posted multiple times before on HN). There are literally 100 cool things to learn and try: Like this weekend I thought about writing a small program for the DCPU-16, trying Meteor, making a small app using firebase, etc etc. Possibly, learning more Math has a higher long-term ROI. An another note: When everything melts down, it might be a good time to start another company, rather than look for employment though.
- stoolpigeon 14y agoIt's like my anxiety closet in print. uncanny. except I've been a lot less successful on a number of metrics AND I don't have the hard skills.
- Fizzadar 14y agoDefinitely inspired me to put in more effort into my CS degree than I do currently!
- dhawalhs 14y agoThere is a way to be prepared for 2016: http://www.coursera.org/ http://www.coursera.org/ http://www.udacity.com/ http://www.udacity.com/ http://www.mitx.mit.edu/ http://www.mitx.mit.edu/
- keeran 14y agoI found http://khanacademy.com http://khanacademy.com extremely helpful when trying to catch up on the math involved in the ml-class / ai-class material.
- its_so_on 14y agoThe blog entry should end with the guy waking up in a cold sweat, tripping over his bedlinen to get to his laptop, fumbling for his 2-factor authentication fob, and checking his bank account. Inputs the second factor key. Navigates to total in all accounts. Counts the figures, one, two, three, four, five, six, seven, and some cents. Counts them again. Breathes deep, and goes back to sleep. Thank God, that job interview was just a nightmare.
- mattmanser 14y agoThis is absolute and utter nonsense. Firstly a tiny amount of people know C, C++, Java, Python & Ruby. If you found someone with that lot I'd probably hire them on the spot. That shows some real skill, multi-linguists are actually pretty rare, discounting the obligatory uni taught LISP and Javascript. Secondly there's a constant need for people who make CRUD apps. Constant. Almost every business can benefit from a totally custom app with it's own special workflow. We tried RAD tools, we tried auto-generate tools, we tried plugin workflow that would be 'user' edited. Turns out if you don't involve a programmer it all goes very wrong. After 20 years of promises from Delphi, VB6, Java, Rails, etc. the reality is it's getting harder to make good apps because everyone's expectations only go up. Bottom line is to make a CRUD app you still need a programmer. Almost every business is realising they need a programmer. The market's only going to get bigger, much, much bigger. This reads like it's from a person who's never been out of the ivory towers, hasn't actually been inside a real business.
- dshipper 14y agoThanks for your feedback. As far as the meaning of the article, I wasn't trying to prove a point as much as elucidate something I was thinking about yesterday: the skills you pick up through entrepreneurship. For the past 4-5 years of my life (starting in high school and continuing through college) I've been concentrating a lot of my time learning how to be a better entrepreneur. That's to the detriment of almost everything else in my life. And it's worth it to me because I love it. Even better still, it seems like a pretty safe bet because worse comes to worse and I completely fail over the next few years I'll still be able to get a job as a coder somewhere. But the thing about being an entrepreneur is that it encourages you to get marginally good at a wide range of skills instead of REALLY good at one area. And so something I was thinking about is the potential consequences of this decision on my life. This is what I came up with.
- ziggerg 14y ago> But the thing about being an entrepreneur is that it encourages you to get marginally good at a wide range of skills instead of REALLY good at one area. Being marginally good at many things show that no matter what gets thrown at you, you'll pick it up fast. This is necessary in entrepreneurship and it becomes ever more necessary elsewhere as the pace of software development increases. There's no such thing as "algorithms" skills anyway. No matter what skills you have, you'll probably need to adapt them heavily to whatever new job you find yourself in. Yes, we're mainly startup-ish people around here, but I'm pretty sure that even if I wasn't on, I'd hire a jack of all trades with a proven track record over skills in "math" and "algorithms", whatever that means.
- chrisrhoden 14y agoWrong, wrong wrong wrong. It's so easy to forget how much we had to learn to build websites. It's incredibly easy to forget how much time getting the event loop or even MVC to click took. It's easy to fail to remember how hard it was to learn the 5 different languages required to build the app we made in a couple of weeks over the summer. But those are skills, as challenging to learn as algorithms and big data. As someone who has had to learn data warehousing very quickly, before being shown the joy of such things as MapReduce, before being slung into serious number crunching performance eeking territory, I can say with absolute certainty that, as "web scripters" or entrepreneurs, we have a huge advantage - we're the people who taught ourselves how to make things instead of regurgitating what a CS program teaches us. I started a CS program at a decent university. While I think it's true that ivy league and extremely competitive programs might force one to think about this stuff the right way, State University absolutely do not. Most of the kids coming out of there will not be as qualified as someone who has taught themselves how to build a business. Most importantly, If you're coming out of college, there is approximately a 0% chance the folks hiring you will have any expectation that you will be useful for several weeks while you get up to speed, which is plenty of time to become competent enough to be dangerous.
- dshipper 14y agoI'm by no means suggesting that a CS degree is the only way to get good at this stuff. In fact, I think that most of the best programmers I know didn't graduate. The difference is concentrating on being an entrepreneur vs concentrating on being a coder. This part is reposted from another comment because I think it's important to your point: As far as the meaning of the article, I wasn't trying to prove a point as much as elucidate something I was thinking about yesterday: the skills you pick up through entrepreneurship. For the past 4-5 years of my life (starting in high school and continuing through college) I've been concentrating a lot of my time learning how to be a better entrepreneur. That's to the detriment of almost everything else in my life. And it's worth it to me because I love it. Even better still, it seems like a pretty safe bet because worse comes to worse and I completely fail over the next few years I'll still be able to get a job as a coder somewhere. But the thing about being an entrepreneur is that it encourages you to get marginally good at a wide range of skills instead of REALLY good at one area. And so something I was thinking about is the potential consequences of this decision on my life. This is what I came up with.
- iamgopal 14y agoIf I will do maths and algorithms, what will all smart people of this world will do ? I am stupid by intention and not by chance.
- StCroix 14y ago"As I walked out of the interview and stepped back into my time portal device, destined for 2012, I couldn't help but wonder - Why was she using a pencil on that 'Gorrila Glass' screen... Could it be that she was still hanging on to a corporate process or HR career that was as obsolete and irrelevant as the 'handbook criteria' she was trying judge me by? Or was it just that she was destroying her iPad as fast as the guy (with the beard and john lennon glasses) on the cover of my CS101 course book was turning in his grave. Then I kicked myself for not short-selling my Apple stock back in 2012... but wait, I thought... I guess I still can!" Wrrrrrrrrr--ZZZZzzzzzapppp!!!
- gavanwoolery 14y agoI think people are missing the point of the article -- I think that what the author is getting at is the market might be soon flooded with CS graduates with a nice set of accomplishments. Probably not by 2016, but at some point its going to become more competitive I am sure.
- michaelochurch 14y agoInteresting. My angle of approach is opposite what the OP describes. I say this as someone who studied math as an undergrad, and has a pretty solid grasp of algorithms and the mathematical principles, but who's had a weak point in the front end for a long time, that I'm now working to remedy, because presentation is just as important as algorithmic excellence and efficiency. Currently, I'm studying Play (the Scala web framework) and, at the same time, having to ramp up on JavaScript, CSS, HTML... and getting an appreciation for how much there is to learn (MVC, database configuration, integrating a web app with a typical build system). It's not mathematically hard, but it's difficult in the way that biology is: there's a lot to learn, and between the concepts are equally important and intricate relationships. For my part, I think that people who can present complex ideas well will always be employable. I think anyone who doesn't learn basic front-end programming concepts is doing himself a serious injustice. The challenge of 2016 won't be solving hard mathematical problems. Yes, there will be high demand for people with those kinds of talents, and that kind of work will be (as it always has been) important. However, I think the biggest challenge is going to be educational in nature. It won't be enough to build great software; you'll have to teach people (who are too busy to learn and compare the intricacies of 35 technical assets just to do their jobs) how to use what you've built.
- deleted 14y ago[deleted]
- nirvana 14y agoMy perspective might be in a minority, because I'm an autodidact. I did go to college- and studied Physics. But it has never hurt me in getting a programming job -- in fact, I have always simply ignored any requirements listed in job listings.[0] Several times it has come out- many months or years after I was hired, and people are surprised I don't have a CS degree. Its like a prejudice- they assume that anyone competent must have gotten a CS degree. Maybe non-autodidacts need to go to college in order to learn how to program? (But I would doubt this-- you all knew how to program long before you were freshman in college, right? I mean, hackers are born, they're not created in CS classes, right?) On the other hand, the people I've interviewed with and worked with who were non-hackers, who went and got a CS degree, often were weak performers. Much of what's needed in the workforce is not taught in CS programs, and something about the way CS programs are taught seems to often condition people such that they have to unlearn a lot of stuff before they're fully effective in jobs. Of course, I've known lots of good hackers with CS degrees. Hackers do tend to follow the custom and go to college and get their CS degree and arguably could be better hackers than they would have been without the CS degree (though I think its debatable whether 4 years of employment experience or the CS degree makes the better engineer- for some people its one, for others its the other.) When I entered the work force, if not having a CS degree meant I couldn't get jobs it would have been a real issue-- but these days, its is a whole lot easier to start a company, and thus you don't need to be dependent on passing arbitrary HR requirements[1]. If you aren't playing the startup lottery (e.g.: starting an instagram like business and want thus need VC funding) it is vastly easier to start a profitable-from-day-one business now than it has ever ben. And 4 years from now, that's not going away. [0] This also shows how well resumes are read. Mine doesn't lie, but I put job history first. I'd usually have so many interview choices that I'd pick my top 5, do 5 interviews in a week and get 4 offers and a callback. I'm sure some companies did read my resume and didn't give me the chance to interview as a result- but that's fine- it is like a built in bozo filter from my perspective. [1] Frankly I think the requirement for a college degree is a bit like hazing. The people before you went thru it, and so they aren't going to accept anyone who also didn't have to go thru it. It has nothing to do with skills, just a way to exclude people who are different. Lord knows that piece of paper is not proof you can program.
- 16s 14y agoKnowing data structures separates the men from the boys. If you do not understand the difference between a tree (C++ std::set for example) or a hash table (std::unordered_set) you have placed yourself at a disadvantage. You can learn these things, they are not rocket science and you don't need a CS or math degree to do so, but it's important that you do learn about them and when to use what data structure especially if you have to scale to more than you ever thought possible. Most all programming languages have containers (lists, sets, dictionaries, maps, etc.) that are backed by various data structures. So you can experiment and learn.
- gdubs 14y agoVery true. My objective-c skills got dramatically better after spending some time learning the stl in a c++ project. Reading about where you would want to use a deque vs some other container was enlightening, and upon returning to objective-c I started to pay attention to its various containers and design patterns in a whole new light.
- Drbble 14y agoDans premonition is actually one step behind. Knowing the mainstream skills of 2016 will not be enough. But you will have enough room in your inventory because the mainstream skill of 2012 will be irrelevant. 10 years ago if you learned Perl on the side it opened doors to great jobs. It's always the way that learning the up and coming not yet mainstream skill will give you an edge in employment. Data analysis is the skill for 2012. Something else will be in 2016.
- orbitingpluto 14y agoBarrier to entry is going down, not up. No one cares if you can do an algorithmic analysis on different ways of sorting to choose the most appropriate way. These days it's dynamically built into the function. Just call sort. Educationally there's not much of a difference between a philosophy, math or computer science degree. All of them are doing the same thing - logic. Philosopher approaches it classically, mathematicians do it formally, and comp sci do it ad hoc or practically. Each has it's virtues when you design or program.
- oliland 14y agoCan you point me towards a sort function which will sort my data in the most appropriate way, every time? Some sort functions might cover 99% of cases for web development, but not for other problems. The computer is not magical.
- gdubs 14y agoThat's a pretty bad example, since sorting is exactly the kind of problem that really depends on the application. Eg, depth sorting objects in a game would run quicker if you pick an algorithm based on the fact that consecutive frames typically don't change that much.
- rapala 14y agoExcept when you need to sort a big collection of strings and the standard library sort function never returns. What we need is good vocational education. Polytechnic schools that teach you how to code, be part of a project or lead one, design an application and so on. Then the CS taught in universities can focus on the basics of computing, analysis of algorithms, AI, programming languages, etc without the now mandatory Software Engineering 101.
- jdlshore 14y ago"The problems we’re working on involve in-depth data analysis that require an extensive math and algorithms background." I can see why a college sophomore would fear this response. But in my 18 years of programming, I've seen that the vast majority of software development isn't about the stuff they teach you in school. It's about design, collaboration, languages, libraries, and frameworks. It's about working around crazy cross-version incompatibilities, solving heisenbugs, and keeping everything maintainable. Math and algorithms? Feh. Not the real issue. Let's assume the startup bubble bursts and programming jobs become scarce. There won't be any kindly interviewer at the large bureaucratic companies. There will just be a faceless HR person with a keyword-searching database saying, "No CS degree--no interview." But personally, even if the startup bubble bursts, I don't see the demand for programmers going anywhere but up. And that entrepreneurial background will only be an asset at the smaller, more interesting companies.
- randomdata 14y agoBesides, starting your startup on the downside of the bubble is exactly where you want to be. You don't get rich starting up at the peak. If you think there is a bubble about to burst, save up everything you can earn right now, and then start your business after the pop.
- noduerme 14y agoFirst of all, a person with a C/C++ skillset is not just capable of "building an app or a website". Most web devs now (and I include myself in this) don't have the requisite skillset to write the database engines, low-level graphics routines, browsers -- all the numerous layers we take for granted to print 'hello world'. And yet self-taught coders, by definition, are always learning. I have never applied for a company coding position; I came from design and learned to code as I went; but 75% of my business now is in custom business apps. I've yet to meet a client who doesn't value the fact that I'm willing to learn what I need on the fly. Many times I take projects with the caveat that a certain amount of cash and time is probably going to be spent filling in what I don't know, and hacking around until I figure it out; and that if that becomes onerous, I'll knock some of it off the tab. I bill at $100/hr, modest by freelance coder standards, but obviously many times higher than coders on oDesk, and at least double what I'd earn in an office (if they'd hire me - which they probably wouldn't). And yet my clients end up paying less for rewrites and fixes, spend less time on the phone, and end up with a product they're happy with. The small-to-midsized business owners who understand the value of letting me hack away, who ask what I think about how they can analyze their data, etc. get great value for their money, and I don't see a shortage of them. When I really, really don't know, I hire out to other hackers who do. I wouldn't want to hire a company composed of people who can memorize algorithms, but can't think on their feet; I'd much rather have the exact opposite, and my clients at least feel the same way. And I'll use whatever tools are at my disposal. The first time I wrote an online store, in 2001, I did it from scratch. I had NO knowledge of databases at all... I actually didn't know there was such a command as serialize(). I ended up writing a whole custom back-end in PHP that did its own serialization, flat file writing and retrieval on products, customers, orders, etc... hundreds of products in the store, thousands of customers... and that site is still running. Companies that would rather have drones with degrees aren't companies I'd work for, and I'd argue that they aren't who successful businesses looking for software want to hire, either.
- adrianhoward 14y agoI've had this kind of argument presented to me every few years since the 1990s. It was probably happening for the forty years before that. Soon we'll need "real engineers" - and these fly by night part timers who don't have a "proper" background in computing are doomed! DOOOMED I SAY!!!! Tosh. I'm a guy who has got a subject specific degree - more than twenty years ago now (1st in Computing and Artificial Intelligence for those who care). I was selling software before that, and have spent most of the time since in industry. What have I noticed since then? Amount I've actually used the "hard" CS stuff I learned there - close to zero. Correlation between "being good at math" and being a successful developer - basically zero. Correlation between having a degree and being a successful developer, after the first few years in industry, basically zero. I don't see that magically being different in the next four years. (Curiously the "being good a math" thing seems to be something US centric. I've not noticed the same focus on that with folk in the UK or elsewhere in Europe). The space that developers get to play in has got larger and larger over the last 30 years. I don't see that changing. Quite the opposite in fact. Sure some of that is going to be in areas that really need some hard-core math or engineering skills. Those jobs are out there now (embedded development is exploding again, big data has been around for years, the clever end of game development). I'm sure they'll be more in the future. But there are also many, many jobs out there that don't. Many, many jobs that involve developers being good generalists, or having cross-over with UX and design, or having a decent understanding of economics, or understanding big-money. I'm sure they'll be more of those in the future too. One thing we're really excellent at is wrapping up complicated stuff in abstractions that are stupidly easy to use. We're excellent at de-skilling our own job. And every generation whines that the previous one can't build their own computer / write microcode / write assembler / manage with less than 1k RAM / cope without a visual editor / manage their own memory / build their own OS / write their own application stack / whatever. Yet people somehow carry on building new and neat things. If you're a hard-core CS/algorithms person - go for it. They'll be lots of work for you. If you're not? Go find another niche. There are many, many out there. Be a good developer. Have fun. Make neat things. And thus ends this particular Grumpy Old Man's Saturday Rant :-)
- StCroix 14y agoWhoah, so you're saying us younger hackers DON'T have to learn how to write machine code and program C-64's to have any cred around here? Well... My life has been flip-turned upside down. (And I'd like to take a minute so sit right there, I'll tell you how I became the prince of a town called Bellaire)
- pnathan 14y agoIf you don't know algorithms, I certainly wouldn't want to hire you today.
- lchengify 14y agoSo I've done a bit of hiring, and my message to you is as follows: If anyone actually does this to you in an interview, be glad they acted like that because you shouldn't work for them anyway. For companies who have their shit together, this scenario is unlikely for a few reasons: 1. Experience, not classes or school, is paramount. We're hiring. We need you to do X. Have you done X or things close to X before? If so, you're better equipped to do X than anyone who has only taken a class on doing X. 2. School does not indicate coding skill. I've met many people who (supposedly) went to every class who couldn't code their way out of a paper bag. 3. Academic coding != production coding. The two are light years apart, and the latter is worth way more than the former. 4. Classes don't give a good signal on the ability to execute. Execution means doing what is necessary so you can ship. It means knowing there's a first 90% then a second 90% that looks like 10%. Finished, launched projects show execution. School do not. 5. Algorithms are fantastic and useful, but not in the ways they taught you in class. If you can use Google or use your copy of the CLRS to find what you're looking for, then engineer it into your solution, that's almost always more than enough. 6. If entrepreneurship is ever 'just applauded' in your interview ... run. Don't work there. Entrepreneurship indicates that you know this is a business, and that engineering doesn't exist in a vacuum. It means you can balance sales concerns against user concerns against design, UX, product, scale, and not just do things and throw them over a wall. It means you can be trusted to make decisions that add value and not just code.
- sgentle 14y agoI thought this was great. Very clever. Every frontier seems like it will be a frontier forever, until suddenly it isn't. Perhaps software is going to settle down, start a family, and quit this cowboy nonsense. I don't think it'll happen by 2016, but I'd be hard pressed to say it won't happen ever. On the other hand, I like to think that maybe what we call entrepreneurship - the hacker ethos, audodidacticism, uppityness, get-shit-done, rationality, self-improvement, a weird mix of skills cut in a wide swath of "whatever I needed to learn at the time" - is actually an overarching set of tools and attitudes for turning your ideas and ambitions into real things. I can't imagine a world where it's not useful to do that anymore, even if the technology changes. It's true that the entrepreneur toolkit and the 9-5 megacorp toolkit aren't compatible, but every trend I can see points to people needing less and less to get more done. Economies of scale are technological: they shrink as the cost of production shrinks. Diseconomies of scale are sociological: as long as people are still the same, they'll stay the same. The advantages of being a large organisation might not always outweigh the disadvantages. What if it's not us that get left behind, but them?
- guard-of-terra 14y agoSoftware might never end. It will grow and grow and grow and grow until everything is software (or food). Your chair? Software. Your medicine pill? Software. Your glasses? Software. Your boots? Software. Walls of your house? Software. Your car? Software. The road you drive on? Software. I think we've not even yet tapped this. Not only we're not over "peak software" hump - it's not anywhere in sight, we're not even on the main exponential growth curve.
- capex 14y agoThis feels like 'The Matrix'..
- guard-of-terra 14y agoIt would in fact be the opposite. Matrix was about emulating an old boring world in software for people living in jars. Here you will have the real thing. Real but no longer boring.
- mackyinc 14y agoI have studied Marine Transportation for 4 years worked as a seaman for 7 years and still end up as an animator. I feel the same way applying to a job with a competition that have the papers/diploma with them.
- oliland 14y ago"Computer science is no more about computers than astronomy is about telescopes." - Edsger Dijkstra
- StCroix 14y agoDoes anyone else feel that this Op-Ed piece is more 2012 : 2007 than 2012 : 2016?
- deleted 14y ago[deleted]
- Tangaroa 14y agoI grew up hearing stories from the '70s that any intelligent teenager could get a job in computer programming. No experience was necessary. No one was expected to have any experience. They would train you. When I entered college, the general consensus was that anybody who knew HTML alone -- not Javascript, not CSS, not backend development or server administration -- was guaranteed a high paying job. Upon entering the job market, I've encountered the new reality that the requirements for an entry-level position are going up faster than I can learn the new things that are required each year. Every position requires experience in something that I do not yet know or have only minimal experience playing with in a personal or academic setting, but there are many qualified candidates competing for the same position. Too many experienced journeyman programmers are out of work and competing for a smaller number of jobs. The author's bit of sci-fi seems entirely reasonable. It's not where things are headed. It's where they already are, and it's been like this for years.
- SomeCallMeTim 14y agoHuh. Where is this mystical place where there are lots of qualified candidates competing for jobs? It's certainly not the Bay Area in California, where there are far more jobs than competent developers. I'm out in Colorado, and I still get constant offers even though I'm not looking for a job. If you're not able to learn what's required, then maybe you should question whether you're in the right field. I've been keeping on top of HTML, CSS, backend development and server administration, especially high performance servers and NoSQL databases, with a smattering of JavaScript on the side, in my spare time while working on video games as my full time day job. Suddenly I'm finding that I needed all of those skills after all; understanding the whole stack can be quite useful, it turns out. If you don't even have a day job, then you should have plenty of time to become an expert (or at least competent) in at least one narrow field that people are hiring for. If not, then there's no way you'd be able to handle a serious job if you were hired, since just about any job you take will require that you do a lot of learning on the job. The key skill to have is how to learn. Unfortunately school (elementary through University) tends to hammer that skill out of people. Try to find it and reclaim it. Then build something that you can show off to prospective companies -- or sell it yourself! Good luck.
- paulsutter 14y agoThe critical skill for creating value is understanding the customer PLUS the 80/20 rule of software development. A creative technical guy can come with an elegant MVP if and only if he is attuned to real users. This will be even more true in 2016 than in 2012. A nontechnical MBA is just blocked from this insight. And a great algorithm guy who is tone deaf to users is likewise blocked. Even together, they are handicapped compared to the guy who sees both sides. The most powerful problem solving of all is a group of people who can see both sides. Pud's thread about 400K users and what to do next was stunningly wonderful to me. You don't see that on stack overflow and you don't see that in the Harvard Business Review. You see it here on Hacker News.
- grannyg00se 14y agoThis is a nice little story, but I don't see what the problem is. The hiring manager states: "The problems we’re working on involve in-depth data analysis that require an extensive math and algorithms background" So if you know a bunch of programming languages and built some fairly successful websites, why would you even apply for that job? You're and entrepeneur and a "general programmer" at best or maybe even a "web programmer" only just good enough to hack a CRUD site together. If the job posting actually indicated the need for in-depth data analysis with extensive maths and algorithms then this applicant wasted everyone's time by even applying. I suspect that there is some assumption that the hiring manager doesn't know what she's talking about regarding the in-depth data analysis but I don't see where that assumption would come from.
- Aloisius 14y agoMy knowledge of how a red-black tree or how hidden markov models work or that a quicksort is n^2 worst case and n log n typically has saved me literally hours of searching. Over the course of my 15 year career. Good lord, DADS + ACM + CiteSeer and a healthy dose of curiosity and intelligence is enough to get most people through 99% of the "hard" stuff you're going to see even in the era of Big Data.
- mjn 14y agoI agree you can self-teach a lot of it, and a lot of it isn't needed in a lot of jobs, either. I somewhat disagree on the last part. I think there's a significant amount of work in Big-Data-related areas where not having a solid knowledge of statistics greatly increases the odds of doing something completely wrongly, or interpreting the results wrongly. On the other hand, there's a significant amount of work where deep knowledge of statistics is optional at most. But companies like Palantir do seem to put a strong emphasis on the statistical background of people they hire.
- edw519 14y ago1979 Recruiter: "On a scale of 1 to 10, how's your COBOL?" edw519: "10." Recruiter: "Great! I have tons of work for you." 1983 Recruiter: "On a scale of 1 to 10, how's your data base?" edw519: "4. But I'm a 10 in COBOL." Recruiter: "No one cares about COBOL. I need data base people." 1987 Recruiter: "On a scale of 1 to 10, how's your Microsoft?" edw519: "4. But I'm a 10 in data base." Recruiter: "No one cares about data base. I need Microsoft people." 1992 Recruiter: "On a scale of 1 to 10, how's your Oracle?" edw519: "4. But I'm a 10 in Microsoft." Recruiter: "No one cares about Microsoft. I need Oracle people." 1996 Recruiter: "On a scale of 1 to 10, how's your HTML & CSS?" edw519: "4. But I'm a 10 in Oracle." Recruiter: "No one cares about Oracle. I need web people." 2001 Recruiter: "On a scale of 1 to 10, how's your Javascript & PHP?" edw519: "4. But I'm a 10 in HTML & CSS." Recruiter: "No one cares about HTML & CSS. I need back-end people." 2009 Recruiter: "On a scale of 1 to 10, how's your Ruby & Python?" edw519: "4. But I'm a 10 in Javascript & PHP." Recruiter: "No one cares about Javascript & PHP. I need Ruby & Python people." Number of days without work since 1979: 0. Lighten up, guys. If you can build stuff, learn, and work well with others, you'll probably always be fine.
- rdl 14y agoIf you can go from 4 to 10 in something new every few years, that's amazing in itself. (although maybe we're using different 1-10 scale here; mine is probably log and I'm probably and 8.x at my strongest skill, and 4-6 for secondary skills after some solid effort.
- ceejayoz 14y agoThat's why I hate the 0-10 scale for skill level. Some folks consider a 10 to be the guy who invented the language/technology. Linus, DHH, etc. Almost no one is a 10 on that scale. Others consider a 10 to be "I'm an expert in any of the tasks you're going to be asking me to perform with this tech". That's the scale that's more important to me. Then, of course, you get the brand new grad who says they're an 8 in a language despite never making anything that's not a basic class project in it...
- InclinedPlane 14y agoCouldn't disagree more. There will always be more people, and more need for people, writing high level application code, glue code, and "spit-and-polish" code than people writing deep, difficult systems code. Always. Here's the thing, in computing the advances in tooling and performance continue to pile up at an amazing rate. In 2016 it will be even easier to roll out a product built by a couple "web guys" with little in-depth technical knowledge that does an amazing amount of business and has a profound impact on the tech world. Indeed, in time it will be possible to run ventures which support billions of active users per day on incredibly cheap hardware and with a rather modest amount of dev-hours behind them. Imagining that the future is only for hard-headed systems programming is the time honored ego-stroke of the hard-headed systems programmer who sees all of these "dilettante" "web guys" doing amazing work in the real world and making an impact and money doing so. But that's just a fantasy. The truth is that software is art. It's often a thousand times more valuable to write software which communicates with users and evokes in them strong feelings and strong connections than to write software which is technically pure and strong, but sterile, impersonal, and useless.
- Mc_Big_G 14y agoNormally I get this kind if post but this one not so much. Some knowledge isn't something you just "pick up". I'm a software engineer now but my degree it's in mechanical engineering. If I were going for a M.E. job that required advanced knowledge if thermodynamics, heat transfer, calculus, statistics, etc, it would be ridiculous to say that I had started and run a few car repair shops and even ran a high end racing team where we built our own custom off-road truck and won the baja 1000. It's amazing experience but totally not applicable and doesn't mean I can just pick up the requires skills. Am I misreading this? The recruiter doesn't seem clueless.
- buff-a 14y agoI think you hit the nail on the head. The number of brogrammer entrepreneurs out there is huge. They are equivalent to Big Jims Baha XTReme Racing Shop that slaps lifted suspension on other people's 2WD Tundras. But then there are a few start-ups who are designing and building fuel efficient diesel engines, or fully electric cars built from the ground up. These guys will absolutely know thermodynamics etc. So if someone built "mycollegematehavingsex.com" and got 40,000 sign-ups via launchrock, who fucking cares. If they made twitter-for-squirrels and got 10,000,000 active users before the Great Nut Famine of 2015 killed the company, then there may conversations to be had.
- EGreg 14y agoIt depends on what you are looking for. Are you looking to make a big difference and make lots of money? Be an entrepreneur. Who was that famous entrepreneur 80 years ago that said, when he was being questioned by an expert in court, that he didn't know the answers himself but he could easily hire someone who does? If you are looking to get a job, then get the credentials AND be able to help them with what THEY need. Just like you need a product-market fit, you need an employee-job fit. If you are applying to a high speed trading firm, you'll probably need to know C++ and Java and low level concurrency mechanisms (this is what I was interviewed on), and if you know math and stochastic calculus you can make more money as a quant. I didn't like those jobs, so I got out of it. But you can still make a lot. Chances are though, you don't want to make money that way. If you are looking to understand things better, then LEARN. It doesn't have to be in school. Personally I learned a lot from Wikipedia. Before that, I was coding on my own. At 17 I enjoyed math and computer science. Check this out: http://www.flipcode.com/archives/Theory_Practice-Issue_00_Introduction.shtml http://www.flipcode.com/archives/Theory_Practice-Issue_00_In... It has a lot of math in it, but in an accessible way. Why? Because I liked it. So to summarize: it depends on what you want. If you don't have what it takes to help THEM and back it up with information, then do something else. Finding and picking your opportunities is often the secret!
- srconstantin 14y agoI'm not sure if this article is saying people with more CS theory and math do better than people with more work experience, or if it's saying it's hard for everyone to get hired.
- babarock 14y agoThis article is saying that web development (using frameworks a la Rails) might be enough to get you a job today, but as soon as the web-trend passes other skills will become needed. Recruiters are becoming more and more stupid (not in the derogatory sense, they just do pattern matching between job offers and what's written on candidates' resumes). This article is a reminder that it's never too soon to start adding different skills to your arsenal.
- vectorpush 14y agoHonestly, CS is not that hard, it's just that a PDF/textbook isn't as sexy as 1080p Rails tutorial. If an experienced developer spends 2-4 months working through a quality textbook (Skiena, Cormen etc), then he/she is already significantly more qualified than most four year CS degree holders.
- keithpeter 14y agoDisclaimer: I'm not a programmer Have a look at puredata.info and Eastgate Systems' Tinderbox, especially the export template definitions and use of 'agents' for the latter Why can't I have a visual flowcharty type thing that I model a business process in, click a button, and generate a Web app?
- rcfox 14y agoHaving worked with Pure Data before, I can tell you that it is pretty painful to use for anything substantial. When you've got 3+ lines crossing other lines and coming into the same terminal, it's next to impossible to keep track of how stuff works. You spend a lot of time wiggling components to see how their attached wires move.
- csomar 14y agoYou push your super-repos to the datahub, and link to them on your resume; as we are doing it today but putting repositories in Github instead. The point is: A university degree no longer mean the accredited person is capable. It has lost its value, that's why some recruiters are turning to GitHub and other solutions to find skilled people. To assure the author: I don't hold a University degree, and I live in a third world country. I was offered, a week ago, a software dev. position for 30% of what a fresh Engineer (5 years of study) would get. The recruiter insisted that it was a starting salary but it was only a fraction of what I make online. He told me that the position is available anytime I changed my mind. 4 years earlier only, in this same place, you'll be laughed at if you don't hold a University degree whatever skills/capabilities you can show off to the recruiter. Don't dream getting that job, and even if you did, you'll be paid only a third or less than your colleagues.
- deleted 14y ago[deleted]
- petercooper 14y agoParaphrasing Kenneth Williams from http://www.youtube.com/watch?v=CdDtwc9HA7s http://www.youtube.com/watch?v=CdDtwc9HA7s It's frightening to think with modern medicine and all the technology available, they can't really help you. In the old days, we were better off because now they're all "specialists." Everyone's getting better and better at less and less. Eventually someone will be absolutely amazing at doing nothing.
- Dn_Ab 14y agoI see in this thread that a number of people are talking past each other, each with a different subtle sub definition of the word "know". I know of 7 basic subcategories of know - all but the last susceptible to phrasing: (1) Knowledge that is immediately accessible at great depth and can be traversed quickly (2) Knowledge that is not immediately accessible but resides in the unconscious. It surfaces in dreams, showers and intuition. (3) Knowledge that is not immediately accesible but can be so quickly understood from a search (physical or digital) that it might as well have been remembered. Truly, the old fashioned idea that all your knowledge can only be kept inside your head is quaint. (4) Knowledge that is not had but can be quickly acquired due to the similarity of the underlying structure to already possessed knowledge. With speed of acquisition proportional to similarity. (5) Knowledge that is not had but can be acquired due to available learning strategies, knowledgebase and skill in acquiring knowledge. (6) Knowledge that will be had in the distant future (7) Knowledge that can not be gained due to difference in interests, lack of motivation or sufficient strength of reason, entrenched mode of thinking and set of beliefs which inhibit deftness with abstraction and for a very small few - reasons of biology. Knowledge that cannot be accessed by Human Brains. For many cases, the level 4 definition of knowing is sufficient and anything above should be good enough for almost all problems.
- jeffreymcmanus 14y agoThis is like saying every plumber needs to know how to mine copper and smelt it so they can manufacture their own pipes. There are different kinds of software engineers, and the kind that you happen to be may not necessarily be the kind that's in demand by every employer.
- goggles99 14y agoRidiculous - This is pointless has nothing to do with that year it is. Companies who need students who know differential equations or linear algebra have always had these requirements (even before computers or programming languages existed). There is no way a humanities student knows this stuff and no way a company wants expend the resources to have them to learn DE on the job... He applied for a job where knowledge and/or experience in complex mathematics was required and did not get the job because he lacked the qualifications. how is this interesting or even news???
- goggles99 14y agoRidiculous - This is pointless has nothing to do with that year it is. Companies who need students who know differential equations or linear algebra have always had these requirements (even before computers or programming languages existed). There is no way a humanities student knows this stuff and no way a company wants expend the resources to have them to learn DE on the job... He applied for a job where knowledge and/or experience in complex mathematics was required and did not get the job because he lacked the qualifications. how is this interesting or even news???
- goggles99 14y agoRidiculous - This is pointless has nothing to do with that year it is. Companies who need students who know differential equations or linear algebra have always had these requirements (even before computers or programming languages existed). There is no way a humanities student knows this stuff and no way a company wants expend the resources to have them to learn DE on the job... He applied for a job where knowledge and/or experience in complex mathematics was required and did not get the job because he lacked the qualifications. how is this interesting or even news???
- goggles99 14y agoThis is pointless has nothing to do with that year it is. Companies who need students who know differential equations or linear algebra have always had these requirements (even before computers or programming languages existed). There is no way a humanities student knows this stuff and no way a company wants expend the resources to have them to learn DE on the job... He applied for a job where knowledge and/or experience in complex mathematics was required and did not get the job because he lacked the qualifications. how is this interesting or even news???
- marshray 14y agoI agree that we could look at it as simply a case of a bad match in the skillset. But that's also the point right? Everyone with more than two years experience in software development knows skill sets are changing continually. This story is speculating that data analytics will be next the long history of hot/baseline skills for the developer. It does so using the powerful narrative device of not saying directly at all. Is data analytics going to be the next critical skill for developers like relational databases, object-oriented, or internet technologies has been in the past? Or is it going to be (or already is) the next bioinformatics, an interesting subspecialty but far from being the primary source of demand for software development talent?
- goggles99 14y agoThere is no comparison to be made here between mathematics and programming languages as far as continually changing skill sets go. Mathematical concepts have had no new paradigms in my entire lifetime. Mathematics progression moves slower than any science or technology that I am aware of. Higher level math fundamentals may be required for data analytic companies because the math needs to be understood and applied to their rules. Figuring out different ways to collect data is not math, it is innovation of technology or psychology perhaps, but the math that this innovation is paired with is not new or changing in any way. What I am really saying is that data analytics is nothing more than the combination of math and programming. The programming part is evolving quickly, but not the math side.
- scythe 14y agoAs a theoretical physics grad student, I have deep knowledge of math and algorithms and things of this nature (but mostly as related to physics), and I've worked in the world of corporate engineering and programming, and from what I've seen -- having a lot of deep knowledge is not really the norm and it's not really the expectation. Usually, if something difficult or complicated is required, you paper over it with Mathematica or Maple or you use one of the algorithm libraries released by e.g. LLNL or you use ANSYS, things like this that do most of the heavy lifting automatically. Even in experimental physics -- people who have doctorates and loads of experience and such -- you don't typically run across anyone writing that sort of thing from scratch because the majority of problems fall into some categories which can be attacked by a lot of the fancy tools out there these days, and so training to do this stuff doesn't require the intuition and abstract knowledge that might go into understanding the algorithms behind the curtain. To some degree, this drove me away from having an ordinary career that actually pays a living wage and towards academia. The other thing is that you can learn to use the libraries in two weeks or less and it's pretty easy to declare "I have some experience with *" if you've tried it out on your own and can do something with it. And as much as I would like to see a world where people take the time to learn theory, people are lazy, and that sort of thing isn't always viable (See also Sikha Dalmia's Gandhi Rule: http://www.thedaily.com/page/2012/04/19/041912-opinions-column-buffett-dalmia-1-3/ http://www.thedaily.com/page/2012/04/19/041912-opinions-colu... - if you don't learn it, don't expect anyone else to). The consequence is that the computer is often smarter than the people using it. Somehow, I don't really see this resulting in job losses, though, unlike many people claim. The variability and the amount of problems to solve usually mean that there is someone doing some design work, even if it is not on a very serious technical level. It also opens up new possibilities for startups, and I'm sure Stephen Wolfram would talk your head off about it... As regards "cowboy nonsense": you don't always have to attach negative behaviors to ordinary things. Getting exercise and having a social life can be good for everyone, not just douchebags.
- jiggy2011 14y agoOk, I'm going to throw out an open question to the HN community here. I'm a working programmer working mostly on web dev/internal apps for an established company. However I do most of the work on my own rather than in a team and have never worked on a team of more than 5 people (and even that was brief). I am an OK Java & PHP programmer with some Linux Sysadmin experience (mainly running servers for apps I have built). I have basic CS credentials but am mostly self taught (starting with BASIC -> PHP -> Java) and have messed around with a bit of Game Dev & System programming in my spare time but nothing earth shattering. I want to take the "next step" but my skills in math and Big Data analysis type stuff are fairly poor by HN standard, I am quickly approaching 30 and have very limited money. Should I: A) Take a pure math degree (possibly also with stats) to improve my overall math skill in the hope that this will open more doors for me in stuff like NLP , Big data etc (but also cost significant money+time). B) Hack on existing open source projects to increase my knowledge of working on large & complex code bases (significant time cost buy little money cost).Possibly compliment this by working on the free online courses from Stanford etc. C) Work on my own projects in the hope that I can build something cool that will get me recognition in some way. D) Try to improve other skills outside programming/math and become more "well rounded". Discuss.
- salemh 14y agovery limited money B) Hack on existing open source projects to increase my knowledge of working on large & complex code bases (significant time cost buy little money cost). C) Work on my own projects in the hope that I can build something cool that will get me recognition in some way.
- anandkulkarni 14y agoYou should take one of the free online courses from Udacity, Coursera, or even University of Reddit, on algorithms and machine learning (separate topics). A pure math degree will not teach you the skills that you are specifically after: it is pure mathematics.
- jiggy2011 14y agoThat is true, but if many jobs will be in big data analysis I would think that this would be rewarding to people with knowledge of statistics more than CS.
- deleted 14y ago[deleted]
- Swizec 14y agoDidn't we go through all of this once before? Back when people were saying "This is 2002, not 1999"? I wasn't old enough to actually experience it, but I'm sure it was actually exactly like that. Job scarcity comes in cycles, but, assuming civilization doesn't collapse, tech jobs should be pretty safe ... forever.
- demian 14y agoI don't get it. Does people without (hard) engineering or CS education, and without any kind of equivalent experience, get that kind of engineering/CS jobs even today? It's like hiring an architect to do the structural engineering of a bridge. They both "make" buildings, but their heads are in different places.
- martingordon 14y agoAs a Penn grad, I'm really glad to see a fellow Quaker hitting the top of HN. I graduated in '07, when most engineers and Whartonites went to work for large consulting/finance firms. In the past few years, I've noticed a bunch of startups come out of Penn and as someone who went to work for a startup out of school, I'm glad to see others choosing this route as well.
- dshipper 14y agoAlways good to hear from a Quaker! I'd love to chat some time :) my email is dshipper@gmail.com
- davemel37 14y agoRecruiter: I have access to great CS people I can place at your company. Company: Sorry, some dude named Dan Shipper hacked the recruiter industry 4 years ago. Recruiter: So, do you have any jobs for me myself? Company: We need hackers, on a scale of 1 to 10, how good of a hacker are you? Recruiter: only a 4 but my cleaning toilets skills are a solid 10. I would hope by 2016 someone finds a way to make recruiters obsolete. Sounds like a perfect process to Hack with way too much inefficiency.
- hirak99 14y agoI fit that storyline background perfectly. With one major exception, I got a job into finance risk management from campus, because my major was in Statistics. (Though after 8 years of experienced, I learned that statistics is not really used in such jobs - anything more than regression is not understood well (even regression in some cases), and 'intuitive' non-statistical solutions are always sure to be better received and sold despite offering far subpar solutions - but I digress.) I recently got a call from Google for my rank in Code Jam. I explained my position and expressed my desire to work on programming. The HR, a very nice person, made it all but definite that because of my background and experience, I should look for a risk analysis role and not coding. He is still willing to set up a programming interview if I insist... but I don't know what to do :(