33 ms·
Don't Call Yourself a Programmer, and Other Career Advice (2011)
- ReptileMan 7y agoSome solid advice, some not so much. I do call myself a simple programmer. That is how I introduce myself either. Helps a lot when dealing with people whose job title require a third of A4 page to fit. >How do I become better at negotiation? This could be a post in itself. Short version: He misses the most important thing. The most powerful thing into negotiation is to know you can stand from the table and leave.
- artsyca 7y agoYea but you're selling yourself and all of us short -- you're either a hacker, a poet or a craftsman, haven't you heard?
- xchaotic 7y agoI really like that argument and I feel when interviewing I am in that position often, but if you leave money on the table and leave have you ‘won’ the negotiation? Potentially there are greener pastures out there but that’s hypothetical.
- artsyca 7y agoTop two posts on hacker news today -- https://news.ycombinator.com/item?id=21302498 https://news.ycombinator.com/item?id=21302498 ^ this is the other one, wherein the second line of the article states: 'As programmers...'
- barry-cotter 7y agoI’m not sure Patrick would entirely stand behind this as written anymore, just because the long term trajectory of just a programmer looks better than when he wrote this. https://mobile.twitter.com/patio11/status/1175617370796068866 https://mobile.twitter.com/patio11/status/117561737079606886... An under remarked-upon trend: SFBA/NYC engineering wages are starting to drive engineering wages in the rest of the US as these companies open other US hubs and print remote offers, in both cases keeping salaries in relatively tight bands for e.g. internal fairness reasons. If you were going strictly by geographical market standards you could have a $200k new graduate in SFBA reporting to a 15 year veteran EM making, hmm, $120k or so in Chicago, but since nobody can tolerate that, that EM gets offered $250k. “Are there enough engineers from SFBA companies for this to matter nationally?” There are approximately 3 million software engineers in the US and approximately, finger to wind, 300k work for AppAmaGooBookSoft alone, and that number increases by 50k per year. The modal software engineer in the US is still working for a digital marketing agency or midwestern insurance company but capitalism is starting to say "Look if you can paint pixels on a web application and you presently work in a cost center, that's unacceptably inefficient."
- 9nGQluzmnq3M 7y agoI would argue the opposite: the trajectory of being a programmer has been really good for the past 10 years or so, but we've pretty clearly reached Peak IPO and a correction is on the way. And if/when it does hit, the person with the skillset "can increase revenue or reduce costs" will be in much better shape than "can program mumbo-jumbo".
- barry-cotter 7y agoI’m pretty sure the entire startup “industry”, companies like Stripe and Airbnb which are well past finding product market fit and the risk of death included has less employees than Microsoft. AppAmaFaceGooSoft probably hire more people every year than every YC company put together ever employed, at their peaks for those that went to startup Valhalla.
- bryanrasmussen 7y agoI think if you call yourself a programmer you can do consulting at a relatively high rate for companies who need to get some project for their profit center done. You do that, demonstrate your worth, leave with lots of money, and they might just call you again next time they need to do something for their profit center. There's definitely ways in which being a programmer can be part of a rewarding career.
- keiferski 7y agoThe point is that you should call yourself a consultant or businessperson, even if you want to be a programmer.
- prepend 7y agoIt’s not like I only get one word to describe myself. My business card can read “Programmer Businessperson” or “Programmer, Foo Consulting.” If I’m a high rate programming consultant then I want my customers and potential customers to understand what I do, and it’s likely programming, business, consulting- in that order.
- lonelappde 7y agoPatrick is not mainly a programmer. He does some programming, but he is mainly a n A/B testing consultant to companies with small tech teams. That's great, but consultant isn't the only tech job. There are tens of thousands of jobs where companies have highly leveraged programmers (called "engineers") that are well compensated for doing what they are good at -- programming.
- jpindar 7y agoThat depends on who you want to be hired by. Some companies already know exactly what they need - they need some specific software written so they are looking for a programmer.
- keiferski 7y agoI mean, that’s sort of Patrick’s exact point - you should avoid being hired as a generic “programmer” as you’ll make far less income. Instead, if you frame yourself as an expert in a particular business problem (and have the data to back up your results), you’re far more valuable to the average manager at BigCo, or to any business in general. A good example of this is the acquihire phenomenon. BigCos often acquire small startups purely to hire the people working there. Half of the time, they shut down the startup and throw away the code. The objective is to hire smart people whom are also domain experts in a particular problem.
- afarrell 7y agoThis is genuinely really good advice. However, I want to caution against one interpretation: When you focus your attention on projects to cut costs (and risk) and grow revenue, it is possible to put that as your top priority. It should be your second. Your real top priority should be the health and stability of yourself and your family. Ideally, this is aligned with focusing on visibly-profitable work for your employer. This is often true, but not always. ————— Example: Suppose you are working at a company that takes code quality and automated testing seriously. This has real business value because it means that you are able to quickly execute projects which accelerate the sales team and unlock partnerships. So far, so good. Then suppose there is an opportunity which involves taking over a codebase written by another company. The business case is strong—by taking several months to make UX improvements, you can significantly raise revenue. But, the codebase is in a poorly-documented PHP framework, has haphazardly inconsistent naming, and no automated tests. Should the company do the project? Maybe. Should you do the project? Maybe not. Here’s what can happen: Your team agrees that its going to suck but you’re all in this together. You start on the project and you find it much harder to make progress. Because of the new toolset and lack of tests, you find it hard to maintain focus. You also lose the ability to create reasonable estimates, so your communication with internal stakeholders erodes—taking trust down with it. The number of noisy automated alerts that come in also increase, also decreasing your focus. You try to find time after work to focus on working through a PHP book, but its hard. The noisy background of your open office combines with your lack of understanding of your toolset to mean you feel useless making day-to-day progress. You talk to your manager and team lead about this. They care, but they are overworked. Its not like they they can change the open office anyway. Don’t worry—The project will be over soon. Everyone is in the same boat. At the end of several months, you need to fill in your semiannual self-evaluation. You choke—words aren’t coming out. You’re caught between knowing you need to brag about your accomplishments and...not feeling like you have none. You’re bad at lying. After spending 2 full days on your self evaluation, you submit it mostly empty. Soon, you are searching for a new job. ————— So yes, when thinking about how the company views engineering, look at revenue and costs. But before that, look at the things that you need in order to be effective. Keep your mise-en-place. Use tools that fit your brain. Learn to zealously advocate for what you need.
- lifeisstillgood 7y ago
- SquareWheel 7y agoTough read, but some solid nuggets of wisdom in there.
- rgoulter 7y ago> ... just like how most good candidates aren't on offer. I know this is a minor statement (and not really important to the advice otherwise), but I liked this discussion that there can be various reasons why good candidates would struggle to find a job: https://danluu.com/hiring-lemons/ https://danluu.com/hiring-lemons/
- Gunax 7y agoThanks for the read... That was exactly how I've felt only I was not able to articulate it so well. The best dev I know didn't go to college (he tried to be a traffic controller when other people would have been at university). He's exactly the kind of person who would be doing "elliptic curve partial nonce bias attacks" over the weekend. I've seen him have to explain stuff like endianness to people with masters degrees. I don't know him well enough to ask, but I think he is stuck working for us because 80% of jobs are off-limits without a degree.
- timwaagh 7y agoThis article is to me quite brilliant and hits most of the right spots. I liked it. Then I see the picture of the author and cannot help but think: practice what you preach. I would not be caught dead wearing a red tracksuit on a bad hair day when posting a blog post about, among other things, how grooming well and wearing a suit helps you make more money.
- deleted 7y ago[deleted]
- lonelappde 7y agoThe bias goes the other way now. A lot of people with a lot of money wouldn't hire a tech consultant in a "phony" suit with a stock photo -based website. They prefer "authentic" people who focus on their work, not their clothes.
- timwaagh 7y agoI guess it kinda depends. Usually engineers do not get hired by 'someone with a lot of money'. They get hired by mid-level managers or a committee of stakeholders. I can understand that some scaleups in social media where hoodies are part of the corporate image are like that though. but would a tracksuit be appropriate even there? But I am going to be 'consulting' for my countries tax authority soon. I wore a blazer to the take-in interview. I don't wear full suits myself as it is above my paygrade, but people expect to see at least business-casual in that kind of environment.
- chasingthewind 7y agoRe: Profit Centers vs Cost Centers I was once on a team that maintained a SaaS application that was in some sort of bizarre super-position of "cost center" and "profit center" a few years back. The company technically sold the app and made money from it, but they also tended to give it away almost for free as long as the buyer was going to be paying lots of money for the company's $FLAGSHIP_BUSINESS_SERVICE that integrated with the app. (Think of it like a free mobile game with micro-transactions.) The primary way customers interacted with $FLAGSHIP_BUSINESS_SERVICE (and generated micro-transaction revenue) was through our application. However because the application wasn't what the customer was actually paying for, the executives had an impossible time deciding whether to treat the app like a cost or a profit center. Whenever the app was working fine and everybody was happy the executives were convinced it was a cost center and looked down on it. Whenever it wasn't working fine and companies began to get angry and threaten to take their business elsewhere suddenly the executives would realize that without the SaaS application they wouldn't be able to sell more $FLAGSHIP_BUSINESS_SERVICE. Long story short, it was a strange and frustrating experience in many ways.
- cool-RR 7y agoMy best conclusion is that there is no definition of "cost center" and "profit center" that makes sense. I challenge anyone to give me such a definition. This is as good a place as any to put this: Peter Drucker originally coined the term "profit center" around 1945. He later recanted, calling it "One of the biggest mistakes I have made". He later asserted that there are only cost centers within a business, and "the only profit center is a customer whose cheque hasn’t bounced."
- yksmd 7y agoOn the other hand: https://yosefk.com/blog/do-call-yourself-a-programmer-and-other-career-advice.html https://yosefk.com/blog/do-call-yourself-a-programmer-and-ot...
- YeGoblynQueenne 7y agoGood read- thanks.
- ensiferum 7y ago"Engineers are hired to create business value, not to program things." Yup writing software should be the last recourse and only to be used when all the other solutions to problem are not viable.
- tjpnz 7y agoThat's a function of experience. Junior dev me was coding 80-90% of the time but 10 years in it's 10-20% of the time.
- clarry 7y agoOr a function of your position in the hierarchy of things. Tell a programmer in a subcontracting company to create business value when the main contractor's architects & sales team have -- without your input -- already decided exactly what feature must be implemented..
- matz1 7y agoThen who program the things? Yup thats right: programmer. Program things and create business value can be two separate thing. Each in itself can be really hard and require different expertise.
- ensiferum 7y agoYes programmers program but the point was that programming new software should be the last option in solving a problem and only done as a last recourse.
- matz1 7y ago>programming new software should be the last option Sure, but thats not the concern of programmer.
- ensiferum 7y agoOften it is when unfiltered business requirements come down to the engineering department and individual programmers. Then the first thinking should be: how can I avoid solving this problem? If the problem needs to be solved then the next question is "how do I solve this without writing a single line of code". If software is required then the question is how to use and apply already existing software. If there's still need to write code then finally we can start thinking howto write the least amount of new software.
- non-entity 7y ago> Read ad. Send in resume. Go to job interview. Receive offer.” is the exception, not the typical case, for getting employment Oddly of all the jobs I've gotten most have been via that route. I've never had recruiters do anything but waste my time and trying network has always seemed to land me among people who are looking for a job as well.
- ghaff 7y agoIt really depends. People with well-defined specific skills can often get jobs through essentially keyword searches. WRT "networking" I agree if, by networking, you're referring to "networking events" which, as you say, probably tend to be attended by people passing out business cards and looking for jobs. But every job I've had since my first one out of school has come through emailing people I've known professionally at aa company I've been interested in working for.
- prepend 7y agoI received this advice quite a bit and it took me a while to understand it. Early in my career I worked with a few folks who had PhD after their names. I don’t have a PhD so I was completely unaware of what that really meant and how to value it. Almost exclusively they were pompous, sucky programmers and dbas, and project managers, and other roles common in profit center tech companies making software. I thought PhD was a signal for dummy based on my super small sample of 20 or so people. I eventually got to work with a ton of awesome PhDs and realized that I was wrong and scientists working in their field leveraging their life passion of study is very different than someone having a PhD and working outside their element. I think this is the basis for how many people view programmers. They just see the person who cranks out a billion lines of SharePoint and costs them a lot and don’t even get to experience a world where a programmer creatively removes the need for a billion lines of SharePoint. So there’s different kinds of programmers. My current idea is to call myself a programmer and describe my roles and outputs in a way that people can assess if that’s something that helps them or not. I generally don’t think labels and titles mean too much by themself and actively want people who think that to avoid or misinterpret my profile as I probably don’t want to create something with them.
- deleted 7y ago[deleted]
- mcloide 7y ago”Writing bug-free code is not a goal. ” Debatable. A poorly written software will generate as much cost as a manual labor if not more.
- mcnamaratw 7y agoSure. And that's why bug-free code might become a goal. Because of which way it makes the money flow. It's not a goal on its own, is what I think he's saying.
- clarry 7y ago> Debatable. A poorly written software will generate as much cost as a manual labor if not more. Debatable. There's lots of poorly written and buggy software out there that still saves people time. Fixing it might not be worth the cost. And, on the other hand, for some company, fixing bugs is generating them money. Broken window fallacy much? Yeah, someone has to pay. It's sad to see that in our industry, selling pristine and flawless windows is difficult once the party who has to pay sees its cost. Turns out it's often much easier to sell a cheap window made by duck taping pieces of broken glass, nevermind if there are some gaps and holes in it.
- FpUser 7y agoSome interesting things are there.
- elif 7y agoI call myself a programmer to avoid people thinking I want to be a manager or spend my days in meetings. I want people to expect 90% of my output to be code. If this is good for a career? Don't know don't care. It's what I do and enjoy, and there are many slippery slopes to not coding and becoming rusty, and ending up on the M train by default.
- scarface74 7y agoHow do you know what to code or whether you should even be coding at all if you aren’t willing to spend the time knowing the business and the customers?
- elif 7y agoBecause there are hard problems to solve. I'm into computer science not capitalism.
- scarface74 7y agoI bet the company you work for is “into capitalism”.
- elif 7y agoYou don't know anything about my particular situation, and happen to be very wrong. But assuming the role of your rhetorical me, there are thousands more companies just like "mine". they all provide paychecks.
- scarface74 7y agoAnd how do those companies earn money to give you a paycheck?
- elif 7y agoMost of these paychecks come from unprofitable companies. I'm not sure what point you are wanting me to walk into. Are we still talking about programmer management strategy?
- SQL2219 7y agoI tend to agree with this guy, BUT, the gatekeepers are low-level HR people who do not think "increase costs" and "decrease revenues" they are looking for boxes to check. You have to get through AI and HR firewall before you can talk B2B strategy.
- williamdclt 7y agoPart of the point of the author is that if you're talking to the low-level HR people, you're not talking to the right people. That's not how interesting people and interesting jobs find each other.
- lonelappde 7y agoNot everyone can be as famous as Patrick. That's not how celebrity works. Tens of thousands of people get great jobs the normal way by joining a company as rank and file and working their way up, and then getting invited to join their former co-workers' new companies later.
- rozenmd 7y agoPatrick wasn't that famous when he wrote this.
- HellDunkel 7y agoI just realized „Engineer > Developer > Programmer“ seems to be the case with most people. Understatement, where you at?
- friedman23 7y agoIt doesn't matter.
- draw_down 7y agoBoy this comes up on here a lot. It’s ok to call yourself a programmer. I promise.
- eng888888 7y agoEven if I am an registered engineer (civil), when asked, I say I am programmer because that's what I do. Absolutely nothing wrong with it.
- criddell 7y agoYep. It doesn't seem to matter much in the US, but in other parts of the world you can't call yourself an Engineer unless you are a P.E. I typically call myself a software developer because everything I do that isn't actually writing software (documentation, design, system stuff) is in support of that.
- ghaff 7y ago>but in other parts of the world you can't call yourself an Engineer unless you are a P.E. I've been told the same is true in some US states--or, at least, the licensing boards would like people to believe it is. (e.g. Texas) But, in my experience, hardly anyone pays any attention. You do need a P.E. for certain things--mostly when dealing with regulators, etc.--but my understanding that in software specifically, the exam has been discontinued because essentially no on e was taking it.
- arbuge 7y ago> Do Java programmers make more money than .NET programmers? Anyone describing themselves as either a Java programmer or .NET programmer has already lost, because a) they’re a programmer (you’re not, see above) and b) they’re making themselves non-hireable for most programming jobs. In the real world, picking up a new language takes a few weeks of effort and after 6 to 12 months nobody will ever notice you haven’t been doing that one for your entire career. In the real world this is (unfortunately) not how technical people are hired. The stack they are using seems to be the first thing hiring managers look at. You would think it would be only clueless recruiters who would think this way, but my experience is that well-respected and successful entrepreneurs also operate along these lines. It is not clear to me whether their success is related to or in spite of this way of thinking. To give them the benefit of the doubt, startups often need to move quickly and those few weeks-months needed for people to become familiar with a new stack they're unfamiliar with may simply not be available.
- scarface74 7y agoWhy would a company choose someone who doesn’t know the stack they are using over someone who does? Let alone 6-12 months. Knowing the ecosystem, best practices, frameworks, etc takes longer than a few weeks. Sure I could learn Java or Swift in a few weeks, but does that mean I would be a competent Android or iOS developer?
- Retric 7y agoI have made the jump from one language to another several times on the job. It’s considered lower risk to use someone on the team than higher someone new. It’s also going to take a while to higher someone and get them up to speed. After a year you might not be as experienced as someone using the same stack for 5+ years but the difference is not that extreme. Further stacks tend to share quite a bit. Knowing SQL, HTML, JavaScript, CSS, jQuery etc takes a long time and has little to do with Java vs .Net.
- scarface74 7y agoLanguages are easy. But do you think you could jump from systems programming in C to mobile programming on Android “easily”. I’ve seen people jump from Java to C#. You can see the difference in their coding style, them not taking advantage of the features of the language, reinventing the wheel because they didn’t know there were popular packages that would do it for them, creating horrible inefficient queries and practices using EF etc.
- claimred 7y ago>In the real world, picking up a new language takes a few weeks of effort and after 6 to 12 months nobody will ever notice you haven’t been doing that one for your entire career. I've always been a bit baffled by notions like that. How in the world one becomes a professional in a foreign programming language tech in 6 months? It feels like every modern realworld battleworn programming stack (ecma, c++2x, .net, jvm w/e) is filled with nuances and quirks which, as it turns out, an engineer _must_ know about to be able to bump revenues a little bit and to call themselves a professional. Hell, even inside _one_ stack there are a lot of special interest fields. Is every C++ programmer a graphics programmer? Can a C++ programmer become one overnight? Highly doubt it. >If a Python shop was looking for somebody technical to make them a pile of money, the fact that I’ve never written a line of Python would not get held against me. How? How is that possible?
- NiKMic 7y agoBecause companies don't care about how 'clean' you code is, what design patterns you use or what cool new technology you are using. They just care that you manage to release quickly so the company can start making money. So even if you don't know the best way to do things or the best pattern to use, as long as you can hack something together that works reasonably well for some time then you're good enough. Sure, it might be flimsy, break easily, unreadable etc. but if the company is making money then business is happy. Think about it...code becomes legacy so quickly. 2-3 year old code is considered legacy, especially if it's not used/modified much. You could have spent 15% more time to make it more maintainable but it will still be considered bad code by the next guy who had to work on it because he has absolutely no idea how the code works and what it is meant to do. Chances are, it would be re-written anyway even if you spent that extra 15%. The in the meantime the company might have missed their initial release date and some potential revenue. Not saying I agree with it but that is how it is unfortunately.
- bhldev 7y agoDepends on the business model. If you sit on the bleeding edge all the time maybe (even if you don't you should strive for the newest possible for the skills and budget if only for retention and hiring). But if the whole point of the company is to build some generic software that's configurable then absolutely the inside and code matters because it's a hard requirement. You could build specifically to one type of configuration but it would not solve the other. And that means generic, abstractions, reuse as part of the business case not just some nice to have for clean code. So it very much depends. It's also possible to take it too far. As for internal release dates I have always considered them bullshit ever since I heard executives talk about how they pad the time. The more layers of management the more padding and if everyone works separately in different teams the more the padding. Developers are better off ignoring internal release dates and building the best software they think possible to not compromise on quality. They can cut scope but at the end of the day the software better work. The only thing you shouldn't ignore is warning people if it will go over time. Since 50% of software goes over time that's expected. Either it's good or it isn't either it works or it doesn't and the timescale devs are used to (sprints, days, stories etc) don't have any bearing on reality. If it takes a month more because it has to that's how long it takes. The concept of "MVP" or feature set is totally separate from a good piece of software; once you get there you can release and iterate and improve. And it's called "minimal" for a reason if you stop there your software is sunset. The features and improvements have to keep rolling.
- amirathi 7y agoThis is fantastic practical advice for software engineers early in their career. Here's some more based on the common pitfalls I see, - Don't apply to 50+ companies at one go thinking only a % of them will call you. Choose ~5 companies, do a lot of homework about their business & write to key people at these places telling in ONE paragraph what you can do for their business. If it fails, choose next ~5 and so on. - Other things being equal choose team over company. E.g. working at core technology or customer facing team at a less-known growing business is much better than working at some internal tools team in Google. FAANG carries some brand value for future recruiters, VCs but you should really optimize learning rate early in your career.
- FeatureIncomple 7y ago- Don't apply to 50+ companies at one go thinking only a % of them will call you. Choose ~5 companies, do a lot of homework about their business & write to key people at these places telling in ONE paragraph what you can do for their business. If it fails, choose next ~5 and so on. This is one of the best advices for people starting their careers. This comment should be at the top of this thread! EDIT: Formatting
- ryandrake 7y agoNo, no, no, arghh no! No matter how much you research, study, network, and prep for any one special particular company, if you are the one to reach out you’re going to get ghosted a certain percentage of the time. If that percentage is around 90-95%, which is what it is in my experience being in the industry for 20 years, then focusing on 5 companies may mean zero callbacks. You need to cast a wide net, especially as a junior engineer. I’ve tried this strategy of targeting an insider in my network and pitching myself through him. Several times. It has never worked for me. Ultimately it ends up at “Whelll, nice talking to you! Next step is to apply for this job id online. Good luck!!” What does work is if conpany initiates contact, THEN you go through your network to gather information about the role and hiring manager, and so on. Having an insider pushing for you after company has already expressed interest has been a lot more reliable to me.
- JohnJamesRambo 7y agoThere’s no shame in the word programmer and there was no need to culturally appropriate the word engineer from another profession. Bring back the word programmer.
- hacknat 7y agoMore and more I think the word programmer has come to mean nothing and will continue to lose meaning. More and more people need to program for their work and would not call themselves “programmers” (Scientists, Marketers/DevRel, other Engineering fields, Support, Ops, etc). BTW, there are people who definitely “Engineer” software they are rare, but they exist, especially at the FAANGs. There are lots of people who have the word “Engineer” in their title that shouldn’t, a fine alternative is “Developer”. What’s the difference? A developer is implementing a known solution in a specific domain. An engineer is dealing with a significantly unique problem space that has only been addressed by theory, if that. Engineers spend a lot less time programming than Developers do, because their primary occupation is solving tough problems with their colleagues through documentation, RFCs, etc. They often are not the ones who even implement their own ideas. Wait, isn’t that a Software Architect? No. Software Architects plan and documents in known solution space, they aren’t solving unknown problems. Most people that I’ve worked with in Software have never worked with a Software Engineer before.
- eng888888 7y ago"Engineers spend a lot less time programming than Developers do, because their primary occupation is solving tough problems with their colleagues through documentation, RFCs, etc." Sorry but 100 times no. Engineering is about understanding and using the laws of nature in scientific terms (mathematics). Strength of materials, thermodynamics, hydraulics, that's the stuff engineers study and do.
- hacknat 7y agoYeah, sorry I omitted what you just said, but computer science is a theory driven branch (of mathematics?) that can be incredibly difficult to implement as much as other engineering fields struggle to implement new theory breakthroughs in other branches of science.
- reggiew 7y agoThis advice is is all well and good but to me it seems to optimise for someone with an already successful career. Those of us with multiple long streaks if unemployment can't really pick and choose when it comes to the next contract. Nor can we really negotiate because we can't walk away from an offer.
- llampx 7y ago1. You can always walk away from an offer. 2. Nobody wants to hire a loser, especially as a consultant.
- codegladiator 7y agoOn the other hand I have come across people who describe themselves as "react programmers" etc... And would seriously not touch a different framework or just plain JavaScript. And I don't understand it
- mbillie1 7y agoA great article I read before every time I interview or change jobs.
- jokoon 7y ago> “Programmer” sounds like “anomalously high-cost peon who types some mumbo-jumbo into some other mumbo-jumbo.” Stereotypes. So it's all about titles and appearances? Who cares about such things? Don't you think people should learn how to code instead of pretending they don't like code because they hate math or something? Your company builds software or it doesn't. Ultimately being able to use a computer should not be limited to using word and an internet browser, people should be able to learn how to code some python or other scripting languages.
- avodonosov 7y agoIn my experience programming interviews are done by programmers, so they usually aren't about "the value you created in the past job".
- dejawu 7y agoSure, this post might objectively get you to a higher paying software job, but good God I hope I never start seeing the world like this guy or ever have to work with people who do. Am I really reading the same article as everyone else? The one I'm reading is filled with these sociopathic gems: > Add revenue. Reduce costs. Those are your only goals. > You’re in the business of unemploying people. If you think that is unfair, go back to school and study something that doesn’t matter. > A good engineer has a track record of — repeat after me — increasing revenue or decreasing costs. > Much of Fog Creek uses the Microsoft Stack. I can’t even spell ASP.NET and they’d still hire me. > You should be a good person to everyone you meet — it is the moral thing to do, and as a sidenote will really help your networking > Strive to help people. It is the right thing to do, and people are keenly aware of who have in the past given them or theirs favors. > This is how the game is played. If you feel poorly about it, you’re like a batter who feels poorly about stealing bases in baseball: you’re not morally superior, you’re just playing poorly > Social grooming is a really important skill. There are some bits of the article I agree with, but I can't help but wonder what happened to this person to make them see the world in such a brutally transactional way, where being kind and genuine are just hat tips towards your humanity while ultimately serving to further your career. I can see this guide as maybe useful for someone who wants to use software engineering as a means of clawing their way out of poverty, but on HN, where I'd imagine most people have a genuine interest in tech outside of or in addition to its potential to make them money, I'm terribly disappointed to see the majority of people here agreeing with him.
- sireat 7y agoPatrick (patio11) had a dream of working in Japan and a belief in a rational just world. That dream and belief was shuttered when the reality of being an overworked gaijin for an uncaring zaibatsu settled in. His ticket out proved not to be Bingo Card Creator directly but the articles he wrote on HN (and elsewhere) to boost the SEO for BCC. Not knocking him in any way, I would probably be still stuck in Japan, falling asleep at late night metro every night.
- mplanchard 7y agoElsewhere in this thread, someone posted this rebuttal to the article, which I think is much more nuanced and well thought through. It also emphasizes the value of relationships and kindness in a way the original article does not: https://yosefk.com/blog/do-call-yourself-a-programmer-and-other-career-advice.html https://yosefk.com/blog/do-call-yourself-a-programmer-and-ot... I wound up subscribing to that blog’s RSS feed, because the articles, though infrequent, seem to be generally interesting and thoughtful. Edit: I also completely agree with you re: TFA.
- truth_seeker 7y ago> Remember engineers are not hired to create programs and how they are hired to create business value? The dominant quality which gets you jobs is the ability to give people the perception that you will create value. This is not necessarily coextensive with ability to create value. Sadly true. Its all feel good effect that trumps the genuine effort.
- djsumdog 7y agoI've always called myself a Computer Scientist when people ask me what I do for a living. Not a software engineer or programmer, but what my actual majors were. I have a bachelors and masters in it, I've published three papers (although in Geography Journals .. because .. eh it's a long story), so I might as well claim it.
- pascalxus 7y agoMuch of what he says about business and programming is all true, at least in theory for well run, competitive businesses. But, for instance, sometimes in govt, they never actually calculate the ROI of a project or employee. They just think: well, we have money that needs spending, let's higher some people to build some seemingly useful software. Determining what's useful and what's not ahead of time is harder than it seems. But, the part about most programmers not being able to implement FizzBuzz is incredibly false based on my experience. I've worked for over half a dozen average companies (plus some government too!) in the bay area and I've never once met an engineer who couldn't implement FizzBuzz. They're able to program FizzBuzz and much much more complex things, far more than job requirements need. Not only that, but I've never even met an engineer candidate (i've interviewed dozens) that couldn't do either FizzBuzz or other basic programming tasks. So, I really don't know how you people are finding all these unqualified candidates.
- curuinor 7y agoDon't be in the bay area, that's how. That's why they pay bay area peeps the big bucks: the standard of skill is higher here, because of the community and other factors.
- SomeOtherThrow 7y agoNah it’s just harder to fix wages low when you can job hop so easily.
- djsumdog 7y ago> There’s nothing wrong with this, by the way. You’re in the business of unemploying people. If you think that is unfair, go back to school and study something that doesn’t matter. Andrew Yang brought this up in his interview with Joe Rogan a few months back; how people in The Bay will basically say, "Yes, we're trying to automate away these jobs." And to some extent, we're trying to automate away jobs in the tech industry as well. Look at the Sears (Willis) tower. That building was originally dedicated to all the manual processing needed by Sears Roebuck & Co to process store and catalog orders; logistics for the largest retailer in America .. the Amazon of the early 1900s. A few decades later and the tower was mostly rented out to other customers. Even when things were still going good for Sears, they were able to drastically reduce the number of people they needed using machines and automation.
- blub 7y agoHis assertion is wrong, by the way, only some programmers are contributing to job losses in other domains. I expect that many of us are just building products. Perhaps that's their way of making themselves feel better, when they say that everyone's doing it.
- twblalock 7y agoSome programmers create jobs too. App stores for iOS and Android created an entire mobile app industry, as one example.
- SomeOldThrow 7y agoIn other words, be a servant. > There’s nothing wrong with this, by the way. You’re in the business of unemploying people. Grow a damn backbone, man. Sprout some values. You’ll find life more worth living. Have some pride in your work.
- WillDaSilva 7y agoI find it unfortunately that most of the advice here is good. That said, contrary to what the author claims, the result of rolling a d100 falls within the range [1, 100], not [0, 99].
- JJMcJ 7y agoAn oldie but a goodie.
- jcoffland 7y agoGood advice on how to be a successful corporate drone.
- diminoten 7y agoIs my coworkers aren't my friends, how do job openings travel at the speed of beer?
- deleted 7y ago[deleted]
- deleted 7y ago[deleted]
- buboard 7y agoIf you like your job, call yourself a programmer and build stuff you like. This article is marginally good advice for your pocket but bad for your soul. Don't be a programmer and act like a lawyer. It's one of the few jobs where it doesnt matter if you 're a dog. You create value, easily, you don't just extract it. It's part of the reason why i m a programmer and not an e.g. academic.
- vore 7y agoYou do realize academia is where a lot of the research for programming comes out of, right? Seems like an unfair way to characterize academia.
- buboard 7y agonot CS-related academia for me. But yeah academia requires a lot more politics, networking etc nowadays in the way that the "industry" doesnt
- YeGoblynQueenne 7y agoI think the author is going out of his way to try and sound like a grizzled veteran of career pragmatism, but I think he's just giving advice on how to make your life harder. He's basically trying to find some idealised description of "how things are" and adivising you that, well, that's how things are and you should shut up and suck it up, or you'll never go anywhere in your life. Well, what kind of advice is that? You should just blindly follow what everyone else does, regardless of whether you like it or not? That's just self-limiting. Burnout is a thing because people who want to do something radically different convince themsleves that their only option is to work for a profit center, or something equally soul-sucking and don't use their brains to find a worthy alternative and make it work. There is nothing to be gained by limiting yourself to what seems like "how things are" and trying to do what it looks like everyone else is doing. That way you can only hurt your prospects for personal development and progress. >> Co-workers and bosses are not usually your friends Oh wait. Now _that_ is solid advice. That is 100% true.
- blub 7y agoThe advice given in the blog is colored by the author's life experiences: they had a job they weren't satisfied with in Japan, tried their hand at an ISV (this is what start-ups were called back then), then at consulting and found what I assume to be success with that. This happened over the last 15 years I think. The funny thing is that calling oneself anything except X programmer has become pretty common. In fact, with more and more money flowing into programming, there's no shortage of bullshit artists and self-promoters.
- leshow 7y agoYou shouldn't be able to call yourself an engineer unless you have a BEng, personally. Some places actually have laws against calling yourself an engineer without one.
- Sureai 7y agoI have a b.sc and a m.sc in mechanical engineering. Can I not call myself an engineer now anymore?
- leshow 7y agoWhere I live, no, you need a professional engineering designation. It's a license, sort of like a lawyer or doctor has, http://www.peo.on.ca/index.php/ci_id/2057/la_id/1.htm http://www.peo.on.ca/index.php/ci_id/2057/la_id/1.htm.
- carapace 7y agoIs it relevant to bring up that time major tech companies stole ~$8B from their programmers, more-or-less because they could? https://pando.com/2014/01/23/the-techtopus-how-silicon-valleys-most-celebrated-ceos-conspired-to-drive-down-100000-tech-engineers-wages/ https://pando.com/2014/01/23/the-techtopus-how-silicon-valle... Oh my, I just now saw this follow up: https://pando.com/2014/03/22/revealed-apple-and-googles-wage-fixing-cartel-involved-dozens-more-companies-over-one-million-employees/ https://pando.com/2014/03/22/revealed-apple-and-googles-wage... > Confidential internal Google and Apple memos, buried within piles of court dockets and reviewed by PandoDaily, clearly show that what began as a secret cartel agreement between Apple’s Steve Jobs and Google’s Eric Schmidt to illegally fix the labor market for hi-tech workers, expanded within a few years to include companies ranging from Dell, IBM, eBay and Microsoft, to Comcast, Clear Channel, Dreamworks, and London-based public relations behemoth WPP. So, anyway, yeah, don't be a chicken, be a fox. But better than being a fox, be a human being.
- lerie 7y agoI see people saying it takes a few weeks to pick up a language, those people are programmers and not software engineers. Also, this career advice shouldn't be considered advice, it's simply opinion.
- daveheq 7y agoFuck you 2011, I'm a programmer.
- gfs78 7y agoFor most programming jobs experience in the the tech stack is the defining factor, as most programming jobs do not require deep domain expertise (whatever the domain is: computing, business, etc). Of course general problem solving ability is still valuable but it is more difficult to assess than a candidate´s experience in some tech stack. So, for the general programming market the tech stack is the defining factor. The only way you can navigate between jobs with different tech stacks is by having an insider that guarantees the hiring manager that you have what it takes to learn the new tech stack without trouble, or by finding some company which is desperate enough to take the risk. You can label yourself what you want.