10 ms·
Do call yourself a programmer, and other career advice (2013)
- eldavido 6y agoMcKenzie (original article's author) worked probably a decade outside a major center of tech R&D before taking a job at Stripe. A lot of his advice is written from that viewpoint. It's valuable because a lot of the world operates as he describes. I think the big lesson is that life inside industry clusters (finance/media in NY, Hollywood, Silicon Valley, oil and gas in Houston) is quite different from life outside. In industry clusters, jobs are way more specialized, standards are higher, and "geek skills" pay off way more. A few jobs ago, we engaged a consultant for decent money to tune our postgres implementation. I can't imagine that job existing, or paying that well, outside of a major center of Internet software development like SF/SV. I'm sure there are analogs in oil and gas, or any other clustered industry.
- throwawaygh 6y agoFantastic comment. Kudos. I think this is also highly relevant to perceptions of the value of higher education within programmer circles. I can see how CMU's Systems or Theory courses might seem like a complete waste of time outside of the Industry Cluster, where you really don't need to know all that stuff. But I also see the fairly obscene 10x+ difference between the "first job out of undergrad at NoName" programmer salaries and the "first job out of PhD school at MIT" programmer salaries.
- jolux 6y agoI’m confused, first job out of undergrad vs first job out of a PhD is going to have a massive salary difference in any field and from any two decent schools. What am I missing?
- paulcole 6y agoUhhh, “any field” that isn’t a humanities field maybe.
- jolux 6y ago“nothing” vs “something” is a pretty big difference
- deleted 6y ago[deleted]
- ehnto 6y agoAre you suggesting no one but MIT PhD grads get jobs?
- jolux 6y agoNope.
- ehnto 6y agoCould you be more clear then, the GP comment is already causing enough confusion.
- thaumasiotes 6y agoThe comment states pretty clearly that fresh PhDs looking for jobs in the humanities enjoy the advantage of "something" over the "nothing" that fresh BAs get. That isn't a difference of 10x -- it's much better. In the terms of your first comment, the suggestion is that fresh bachelors trying to work in humanities don't get jobs. MIT was not mentioned.
- ghaff 6y agoPeople who major in humanities do get jobs. I know a ton of them--albeit mostly from good schools. And they're not in retail or whatever. There just isn't necessarily the clear career path that there is with, say, a CS degree and the entry salary is probably not nearly as good. A PhD in English lit or whatever basically only makes sense if you want to teach and that's not a great track these days.
- deleted 6y ago[deleted]
- throwawaygh 6y ago> What am I missing? >> 10x
- quelltext 6y agoThat depends on your PhD research area (even if in CS) and country. In many countries PhDs are only valuable in academia and industrial research institutes, but your salary is capped quite a bit long term. In Asia a new grad fresh out of college is seen as more employable than a new PhD grad by most companies and salary differences would be minimal. I wouldn't recommend doing a PhD if you're out for a high salary there. On the other hand in some European countries just having any PhD degree will open up career paths and salaries unavailable to non PhDs regardless of actual skills.
- jolux 6y agoI was speaking specifically about the US. In the US, such a degree signals dedication and work ethic at the very least.
- C1sc0cat 6y agoBut your still going to make more on average with a BSC in a FANG in industry than a PhD at a tier 1 RnD place like JPL ? CERN. I know as I started work at the worlds leading Research association for hydrodynamics and left for the commercial world as the pay was so bad.
- indemnity 6y agoI work for a German multinational, can confirm. You will not easily be reaching upper management without a PhD. I can’t think of any C levels or one level below that aren’t credentialed as such.
- anonymoushn 6y ago"first job out of undergrad at NoName" is like 150k all-in I think. So I'm surprised if it's 10x.
- throwawaygh 6y agoThe average at our NoName was in the 60s.
- dcolkitt 6y agoThe flip side of this advice is that unless you really don't mind being tied to a single metro center, try to avoid becoming too specialized. Even if you like the city, one problem is that even during industry boom times, rising cost of living is likely to eat most of your career gains. If you're going to bet your whole career on an unrivaled mastery of the minutiae of Postgres performance, then you better like the Bay Area. If your focus is to be a maestro of credit derivative trading, then I hope you don't mind spending your life in New York. But general-purpose skills like sales, management, and accounting are likely to be valued almost everywhere. And therefore give you the freedom to live nearly anywhere. It might be scoffed down by the ultra-skilled industry professionals. But a guy who knows how to run an ice cream shop in many senses has a lot more career freedom and stability than a Google engineer or Goldman trader.
- throwawaygh 6y agoOn the other hand, mid-tier accounting has a two year part-time ramp-up time for an otherwise experienced professional. From world-class $db expert to... $generic_backend_dev... has, what? a few weeks of figure out how to chameleon to the local interview culture? > But a guy who knows how to run an ice cream shop in many senses has a lot more career freedom and stability than a Google engineer or Goldman trader. Yeah, probably a lot of ice cream vendors in the midwest right now who are really glad that they're not Goldman traders!
- msh 6y agoI cant see your point, I dont know enought about goldman traders but I am certain that a google engineer can get a random senior dev job as easy, if not easier, than a random ice cream shop manager can get another job paying as well as a dev job.
- WalterBright 6y ago> I'm sure there are analogs in oil and gas, or any other clustered industry. My dad was the ops officer on an Air Force base in the 1960s. His job was to keep the base operational. The Vietnam War was ramping up, and the AF's need for transport airplanes outstripped their jets, so they pulled a bunch of propeller transports out of retirement. The mechanics, however, were unable to get the old propeller engines to produce the rated power. They followed the directions in the manual, and it just didn't deliver. Frustrated, they pulled out of retirement some old mechanics from WW2. Those old guys never looked at the manual, they just listened to the engines, tinkered with them, and soon got them delivering the power. There's a lot of specialized expertise that never makes it into any manuals. But I still love the idea that those giant engines were tuned by ear :-) Those mechanics were the real deal.
- karatinversion 6y agoThis reminds me of a story I once heard about shipbuilding during WW2. Supposedly, although designs and blueprints were made in great detail, following them today wouldn't give working ships, because the workers implementing them at the time saw where the designs wouldn't work and fixed them of their own initiative. In a way, the opposite of today's optimizing compilers.
- ido 6y agoJIT optimization?
- WalterBright 6y agoThere have been some regressions in the D compiler due to not documenting the "why" of some things in the code, that a later person unwound.
- pjc50 6y agoThis was part of what got the RAF Nimrod programme eventually cancelled; they were ancient airframes that required an ongoing supply of spare parts, but as you describe building parts from the original plans didn't fit properly.
- barrenko 6y agoPretty sure it's still relevant. Don't call yourself a programmer doesn't really clash with accentuating you have higly specialized skills.
- dang 6y agoDiscussed at the time: https://news.ycombinator.com/item?id=6033135 https://news.ycombinator.com/item?id=6033135 There are more dont's than do's: https://hn.algolia.com/?dateRange=all&page=0&prefix=true&query=comments%3E10%20Don%27t%20call%20yourself%20a%20programmer&sort=byDate&type=story&storyText=none https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...
- starpilot 6y agoCan anyone link me to one of those jobs where most people could not do fizzbuzz? Thanks. In the age of leetcode that seems vanishingly unlikely.
- eugeniub 6y agoThe famous Fizzbuzz article was published in 2007, 8 years before Leetcode was founded: https://blog.codinghorror.com/why-cant-programmers-program/ https://blog.codinghorror.com/why-cant-programmers-program/
- RandallBrown 6y agoI've never worked with anyone that couldn't do fizzbuzz, but I've interviewed plenty of people that couldn't. Most of them were already employed.
- tzs 6y agoI could actually see myself botching fizzbuzz if I had been given it during the first 10 years of my career. Up until that point it had never occurred to me that someone might apply for a programming job who could not write the simplest programs. Thus it would never have occurred to me that someone asking me such a simple question just wanted to see the obvious simple answer. I'd have assumed they wanted me to use as much of the language as I could. So if they asked me to do it in Python, for example, I'd have tried for something like this: def fizzbuzz(n, *args): cur = ['' for x in range(1,n+1)] for m, postfix in args: cur = [y+postfix if x%m==0 else y for x, y in zip(range(1,n+1), cur)] cur = [str(x) if y == '' else y for x, y in zip(range(1,n+1), cur)] return cur print("\n".join(fizzbuzz(100, (3, 'fizz'), (5, 'buzz')))) ...and since Python is not one of my main languages there is a good chance I'd botch it.
- toomanybeersies 6y agoI read somewhere (may have been coding horror), that it's not that most people can't do fizzbuzz or other simple problems, 99% of programmers can do it. Most good developers are already employed, so there's this constant pool of unemployed programmers (the 1% who can't do fizzbuzz) applying for all the jobs they can.
- 6y ago
- draw_down 6y agoI call myself a computer programmer, because I program computers for a living. Yes that's not the only thing I do at my job, but the other stuff is in service of the programming. Patio11 is a fine writer but he got a little too 3-dimensional chess on this one. You can just say programmer, it's fine.
- smnrchrds 6y ago"Don't Call Yourself A Programmer" [0] is from 2011. "Do call yourself a programmer" from 2013. The world, especially the world of tech has changed a lot in the past decade. A good advice from 2011 is not necessarily a good advice in 2020. Perhaps" programmer sounds like anomalously high-cost peon who types some mumbo-jumbo into some other mumbo-jumbo" was correct at the time, but is no longer true after a decade of software eating the world. Have either of the two authors, or even someone else, written a revisited up-to-date version of this advice? [0] https://www.kalzumeus.com/2011/10/28/dont-call-yourself-a-programmer/ https://www.kalzumeus.com/2011/10/28/dont-call-yourself-a-pr...
- waheoo 6y agoI prescribe the the fact programmer is the most accurate term for what I do. Im not an engineer, im far closer to an architect and an analyst. But those things are both from other fields and confuse things. A programmer needs to be across aspects of engineering, architecture, business analyst, designer, copy editor, ux, accounting, lawer, marketer and even a bit of project management. That doesnt even begin to cover the domain knowledge often leaking into network admin, sysadmin, operstions, support, and various other functions I get thrown into. Engineer, in my experience, just doesnt quite cut it. We are general purpose knowledge workers with the single defining characteristic of continuous learning. If i had to put a new label on it, id say we are process automaters. But since our focus is on programming computers to achieve this automation and "bring in the automators" makes us sound like robots or bankruptcy auditors, i would say programmer is a pretty clear good fit.
- visarga 6y ago> If i had to put a new label on it, id say we are process automaters. Ha! My faculty is called 'Authomatics' even though they teach programming and computer science. During my career I have automated things, though. It was a good name.
- executesorder66 6y agoSoftware developer always seemed to me to be an unambiguous and good name for what we do. It takes programming, and all the things you mentioned, to develop software. On top of that it is not an overloaded term with some other title from some other industry.
- yllus 6y agoIt still comes down to: Would you rather be seen as someone who creates value (profit), which is a "developer", or who works on odds and ends for the company and ultimately costs money, a "programmer"? Given the two options I think the most advantageous option is obvious. I will admit however that my view on this is rather arbitrary. I don't think we really have a good way to resolve what's best.
- 0x262d 6y agoVery pleased, but also confused, to read two quite good and quite different articles on the same topic in a row that both coherently referenced Marxism. FWIW I work at a not-originally-software-native company that is pushing in a more software-first-oriented direction, as much of the world has since 2011, and that undermines the title "don't call yourself a programmer" more than anything, but also some of the other points in the 2011 article. I do think much of the cynical stuff in the 2011 article is very important for naive tech enthusiasts and naive young professionals to understand, and it seems full of good advice, but the linked 2013 article is also a good counterbalance.
- deleted 6y ago[deleted]
- franciscop 6y ago> Again, I don't disagree, but rather offer an alternative view, equally internally consistent. I have stayed at one job for more than a decade, in large part because I'm rather attached to the people I work with. To be sure, I got raises, and I was ready to quit over employment terms – but it'd take much more than 10%. In my experience and talking with friends it is rare that changing jobs only jumps 10%. You are usually looking at a solid 30-50% increase in salary in early-mid career (~10 years). Outside the US, for late career there's a lower ceiling if you only consider local companies.
- deleted 6y ago[deleted]
- sergeykish 6y agoI prefer to think of myself as Software Developer. I want GTD, working product with real users. I like solving use cases with product owner, balancing technical debt, the patchwork of system administration, use of libraries and writing code. I've thought about myself as programmer until entering freelance. It appeared the act of programming computer is not valued. No need for clever code, make it simple, iterate.
- bjarneh 6y ago> Forget any pride of craftsmanship – you're going to churn out embarrassing junk. McKenzie was at least somewhat correct. Very rarely do you end up in a place where you have time to create something you are truly proud of.
- bluedino 6y agoWith the current state of software, you have application integration services like Celigo and Boomi that allow 'ordinary' users to do the job of a programmer. Before, you'd need a skilled programmer to take 3 months to link together applications or data from different companies, and your accountant can do it in an afternoon using a graphical interface.
- msh 6y agoWell certain IT jobs move away from IT and other jobs show up. While somethings are easier there are also need for more it persons, esp on the higher end of skills.
- doggydogs94 6y agoSince 99% of the people in the world do not know the nuances of computerland, I just say that I work on computers.