10 ms·
Fellow Engineers: This is where your money comes from
- deleted 9y ago[deleted]
- nawitus 9y ago"If you want to increase your compensation over time, continue to put yourself in a position where you can deliver the most value." This assumes an efficient market. In the real world, however, value of a software engineer's output is really difficult to measure. Indirect value (like helping a team member) is even more difficult to measure than direct value (like implementing features or solving bugs and so on).
- foobarian 9y agoSimple rule of thumb for enterprise, make your bosses look good.
- gaius 9y agomake your bosses look good And get a pat on the head while he or she gets the cash.
- dreamfactored 9y agoMy variant is solve their problems. Works flawlessly until they leave and then you are back to square one :D
- WalterBright 9y ago> value of a software engineer's output is really difficult to measure True, but you can make it easy for your boss to conclude that you do deliver a lot of value. For example, don't assume he knows what it is you're doing, or the value of it. Show it and tell it and remind him. It's what any good salesman does, and face it, we're all salesmen one way or another.
- maxxxxx 9y agoWhat it comes down to is perceived value. Only stuff that gets noticed by the people who make salary decisions will help you.
- ChuckMcM 9y agoI completely endorse the suggestion that engineers should learn to understand this concept. If you learn one thing in your career, it should be this. One of the differences between working at BigCorp versus working at SmallCo or VentureCo is that in the smaller companies the relationship is much easier to trace out. Dan Warmenhoven (when he was CEO of Network Appliance) had a wonderful way to very clearly explaining this in an accessible way. From gross margin to net margin to the fraction of the margin that was allocated to engineering. But the other concept, on-off splits, is also something which I think managers need to understand a bit too. When I was at Google their compensation system tended to unfairly bias toward people delivering features and I and others argued for recognition of people that made delivering those features possible (which finally came about in 2009). As a manager you have to recognize when someone on your team or in your organization is helping the whole team work better or get more done. Whether that is an administrative person who is keeping things in the group calendar current or a tools engineer who is keeping the build running smoothly. If you're lucky they will be sick for a week and you'll see the entire organization hiccup as it adjusts. I say lucky because that will give you visibility into their contribution you might not otherwise have until it is too late.
- rsp1984 9y agoWhen I was at Google their compensation system tended to unfairly bias toward people delivering features and I and others argued for recognition of people that made delivering those features possible (which finally came about in 2009). Interesting. I started at Google as a SWE in 2009 and I did not see any of this. I left in 2011 so I don't know how the situation is today. However when I worked there it was obvious that when promotion cycle came everyone was first to claim they "put feature X into Y", even if they were just the ones doing the wiring, not the ones implementing the actual thing. The situation was aggravated by the fact that promotions were (probably still are) in the hands of "promotion committees" (which most often did not have a damn clue about your product or team and who contributed what in reality) and not in the hands of your boss. As a result I saw promotions biased towards the most shameless liars and self-promoters.
- hinkley 9y agoI’ve had coworkers confide in me that their value isn’t being seen. Some were really good, some were constant problems to be managed. I have seen this scenario you observed, and my standing advice is take a week off. If people are glad you came back then you are correct and you need a raise or more power or both. If they just ask you about your trip then your perception of your value is out of whack.
- throwawayjava 9y ago> This is why I struggle with scenarios where people discuss pay and work without considering value. Counter-point: firms exist. If I'm the one figuring out how to create value, why the hell are the C suite, middle managers, and investors getting 99% of the profits? So no, in the context of a large firm, it's definitely NOT an engineer's job to figure out how their skills align with market demand. And that's the whole damn point of a firm. Now, this may be reasonable advice if I want to maximize by income. But maybe my goal is to maximize income under the constraint that "my excellent engineering" is the primary consideration in my performance evaluations. And there's nothing wrong with that; people trade income for all sorts of things. Telling someone not to make that trade-off is like chiding them for buying an expensive latte or sending their kids to an expensive private school. It's not your money, so it's none of your business. edit: And, furthermore, the success of large firms and the high compensation available at those firms suggest that the author's advice might actually be actively harmful. As an engineer, you might actually be better off ignoring engineering-value alignment because you might be better off simply executing well within a well-oiled machine.
- WalterBright 9y ago> getting 99% of the profits? Profits by definition are calculated after labor costs are deducted, so employees get 0% of the profits in salary. However, take a look at your company's accounts and see how much of the gross revenue is paid out as wages and salary. It'll be a big chunk. There's your share.
- rileymat2 9y agoMany words have several definitions. Some more specific and some more general as used by the public. You are right in an accounting sense, but not in the complete definitional sense.
- WalterBright 9y agoIf he did conflate "profit" with "gross revenue", I was explaining that indeed he was getting a share of it. And frankly it is impossible to have any sensible discussion about business and be confused about what profits are - the only definition that has meaning is the accounting definition. It's like discussing newtonian mechanics and confusing momentum with energy.
- WalterBright 9y ago> If you want to increase your compensation over time, continue to put yourself in a position where you can deliver the most value. Implied in the article but not stated: it's not about how hard you work. Working hard has nothing to do with it. Nobody cares how hard you work. It's about what value you provide to the company. Work smart, work effectively, not hard.
- danieltillett 9y agoI wish that was true, but in some organisations working hard (or at least appearing to work hard) seems to be all that matters. The further you are from the owner of the business the more likely you are to be rewarded for non-productive proxies.
- WalterBright 9y agoThis tends to be true, and is the core reason why, in free markets, companies do not grow indefinitely, but tend to become encrustified and fail.
- bitL 9y agoReal-world: - you increase value; your bosses team up with each other and claim the credit; you might even get booed for some minor deficiencies whereas they will be boasting about their achievements - you are generous and do non-AGPL based open-source; parasites are waiting in the open, incorporate your code to their commercial offering, never paying you anything; your bonus will be rude complaints about bugs in your code in your issue tracker - you work for minimal salary and generous equity; when push comes to shovel, CEO will kick you out of the company due to "company problems" and claim your equity; bonus to the threat to your existence will be burnout from overworking and lack of credit - your company creates a new opening for a lead position in your team for which you are the primary candidate; managers of other teams privately ask you if their friend can be pushed to your manager as the "one"
- davidcbc 9y agoYou must have worked at some really terrible companies. While I don't doubt this is the case at some places the places I've worked haven't been like this at all.
- bitL 9y agoI worked for the companies considered "the best" in our industry with Glassdoor rating >4.5 at various stages of their lifecycle. This was happening everywhere, with singular pockets of progressive parts of company that were immune to that. At worse companies you can directly observe sexual or financial relations between managers and subordinates and resulting quick path to success as well, demoralizing the rest. Tech workers are quite often blind and don't perceive it but it's like aliasing in photographs - once you see it, it cannot be unseen.
- ACow_Adonis 9y agoGlassdoor is fascinating for all the wrong reasons. I've now worked in charity/community, private sector, and government, for big, small and medium. During my last switch (from private back to government), i noticed what I'll call the "reverse glass door" effect while browsing their profiles. It was weak but it was there. That is to say, if i had to take all the employers, consultancies and corporations I've had to deal with, and rank them from places I've enjoyed myself at the most to places where I would have to genuinely ask whether there was a wage they could pay me to make me work with them again, it seemed that the workplaces I considered the worst held the highest glassdoor star ratings, and my favourites have consistently been around the middle of the pack. As a statistician I've even considered naming and investigating this effect: explicit rating systems that end up being the inverse of what they purport to be measuring, and I've got some theories as to what could be behind it (me being abnormal, such firms having the resources/need/desire to manage their image the most, high turnover and getting new people to leave such rankings during their honeymoon period), but I've not got round to doing it with any rigor...
- zzzcpan 9y agoThis is really dishonest and disrespectful to people. Most companies are dictatorships, where all of the profits that come from maximizing value to customers do not go to employees. Employees have absolutely no say in it whatsoever and in fact are paid for their time for the sole purpose of not sharing profits with them.
- dboreham 9y agoTrue but they also get to not share in any losses.
- gooseus 9y agoDepending on the company, management and situation - you are the first to experience the loss in the form of being replaced with a younger, more naive candidate or an outsourced dev shop that can keep the product long enough for management to get another round of funding or find themselves an exit that minimizes their losses. To not share in the losses you need to make yourself essential and irreplaceable, which is more and more difficult since a lot of the popular frameworks and cloud services that make developer/devops jobs easier also make them an easily replaceable part.
- deleted 9y ago[deleted]
- hinkley 9y agoIt’s a fiefdom. They are the lords and we are the peasants.
- mitchellst 9y agoI don't think it's disrespectful, because I think this is what the OP is saying. When considering how to make money in this business, you need to look at the company you're working for. He emphasizes that if it does not provide value, you won't do well there. If it's overly greedy, the same holds. It's worth noting how good we have it: when you examine career salaries against years of school required and unemployment/failure rates (i.e., insurance salesmen can make millions, but most don't/can't.) then software engineering is one of the highest paid professions in the US. Could this be true if a controlling majority of employers were so greedy?
- pricetag 9y ago> This is why engineering career ladders start to layer in responsibilities for things that a single individual can’t accomplish themselves. This doesn’t mean you need to become a manager, but it does mean you need to look beyond yourself to maximize the value you’re able to bring to the people who are ultimately paying you. This is where I am right now. I've been a dev professionally for 2.5 years, and I'm looking ahead to what it will take to become a lead and eventually a senior engineer. I notice other senior engineers around me continuously providing value to those other than themselves: in the form of contributing more documentation, directing and organizing design meetings, and in general taking time to gather others to solve a recurring technical issue org-wide, once and for all.
- avip 9y agoI'm pretty surprised to read this. I did not observe any statistically significant correlation between "creating value" and "compensation". The examples are so overwhelming I feel it's on the OP to exemplify his rather false assertion: - Big corps pay loads of cash to research centers that provide exactly zero value to customer. - If you don't man up and negotiate no one will bump your compensation just because you're "creating value" - Creation of value is so vague a term it's practically meaningless This goes on and on.
- throwawayjava 9y ago"Who's the real customer?" often has a non-obvious answer.
- zzzcpan 9y agoThere is no correlation between creating value and compensation, as compensation is set by a job market, where companies compete for workers with each other. It really doesn't matter how much value is created as long as the worker doesn't have a better choice.
- JoeAltmaier 9y agoThe customer pays the company for some perceived value. It may not even be real. But given that it is, the Engineer may contribute to the process, or the testing, or the coding. Which are useless to the customer and not even perceptible. Consider: if the same product were delivered without testing, would testing be valueless? No, its the whole enchilada that the customer pays for. The Engineer is a part of the product but so is the guy on the loading dock, and in the mail room, and sweeping the floors. No we have to look elsewhere for compensation justification. This religion (born out of the Agile process?) that only work contributing to customer needs has 'value' has got to go. Its false on the face of it.
- z3t4 9y agoYou will look better if you join a good team. But how can you know if they're any good ?
- angersock 9y ago"We get our money from customers" doesn't actually cover many other very real use cases. Let's try: - We get our money from bosses who want higher headcounts to justify their position. - We get our money from competitive poaching, so that if GOOG/MSFT/FB has us the other firms don't. - We get our money from salespeople tricking customers into buying our products. This deception is easier if the products actually meet a need, but that isn't required. - We get our money from VC firms playing pyramid games. - We get our money from government grants that need to get spent or funding gets cut next year. - We get our money from grants that have to be spent to show investment in "innovation" or "modernization". - We get our money from selling out users to drive advertising clicks. - We get our money because...BTC is stupidly volatile. ~ It's extremely naive, in the modern economy, to say "herp derp just deliver value to customers and you'll get paid what you're worth". EDIT: Nice downvotes. Again, consider that maybe the modern economy is so twisted and weird in software dev that maaaaybe this simple Protestant work-ethic narrative doesn't actually hold water. Sorry to burst your bubble.
- deleted 9y ago[deleted]
- eevilspock 9y ago> “We get our money from customers” > We get our money from selling out users to drive advertising clicks. Advertisers are the real customer and users the product and all that. This perverse incentive is the driver of most garbage on the web. And not only is the user sold out, they are manipulated by the advertising, the products (e.g. search results, news pages) are manipulated, and now elections are manipulated (Because Facebook et al designed to put the user first would not have spread viral bullshit). Engineers need to put morality and social good above making more money. Greed is not the god that people should be worshiping and designing economic systems around.
- dboreham 9y agoA question I have always asked. The answer can be scary because often it isn't "from customers buying the thing we're making", not even close.
- zebraflask 9y agoTangent: had a similarly disappointing experience with Coinbase. Not worth going into details, but I walked away feeling like the application wasn't taken as seriously as I would have expected.
- mnm1 9y agoThe value I can deliver is strictly limited by the sales department these days. In the last four years, I have increased the value proposition of the business 100x-1000x (hard to know for sure, but not less than that) with my team's contributions (team of 2), yet I have not gotten a raise. No matter what I do, if we don't sell more, the value does not increase. So why should I care about the value I'm delivering when it does not affect my pay whatsoever? Let's face, it almost all jobs are like this. Certainly all startups that are running on others' funds. Certainly all big corps. The author here is talking about a very small percentage of companies where individual contributors can actually contribute to the value of the company and the company reciprocates in value to the employee (pay). The one company that I worked in where this was the case, gave decent single digit raises. Hardly commensurate with value, but not bad. In other words, there's no reason to focus on value provided for an employee at most companies because such focus is either unrewarded or almost unrewarded.
- alexandercrohde 9y agoIf you pretend simple economics is best representation of reality then this blog post is exactly on point, in a perfectly efficient market the value you earn for others is proportional to the profit you get in return and both are proportional to the good you do in the world. Simple economics are not the best representation of reality. For many pride in one's work can matter more than pay, the engineering profession attracts some of the most passionate do-gooders (Gates to name a famous example) who care about the world improving. They aren't usually recognized for it because they try to improve the world by fixing the systems rather than flying to a 3rd world country and building a house. Additionally, in reality but not in simple economics, there is a huge gap in value-generated for the company and perceived-value-generated for the company. In fact, there can be situations where the two are negatively correlated and the engineer knows best. Finally let's remember that short-term value to the company isn't the end-all-be-all. Did you know Zynga had some individual users who spent over 100 grand on virtual items? Great companies often arise by ignoring the short-term-profit and focusing on delivering a great product with a great experience, even if the market for it doesn't exist yet (i.e. what google did)
- therealdrag0 9y agoI didn't get the impression the article was arguing for short term over long term value. Just value to customers in general.
- jeffdavis 9y ago"All you can contribute is what your own two hands can code." The value of which has no obvious bound. The failure rate of software projects is huge and each failure can easily cost millions of dollars, or much more if it amounts to a product failure or business failure. A single engineer's technical choices can easily make or break a project. It's hard to tell later which were the crucial choices, though.
- hinkley 9y agoYeah if I believed the line you quoted I’d be very depressed. Is this all their is?
- galfarragem 9y agoFellow engineers: your (loose) money comes from overcapitalized companies fighting for talent that can multiply their investor's bets or, at least, their investor's hopes.
- fahayekwasright 9y agoThis is very simple. You pay me to write code. It’s not my job to make you a profit and I can’t guarantee you one. That’s why I’m the coder and you’re the executive. I write the code you tell me to. If you find you can’t make money from my code the way you thought, give better instructions next time. I write code for money. If you don’t have money, I will not write you code.
- lifeisstillgood 9y agoThis smells like a straw man argument. Most of us don't have pie in the sky ideals about perfect codebases. we have practical, hard won expectations of a work-person like codebase and we want to build to that standard - not some higher perfection ideal. And being prevented from having good engineering by "get it out the door no matter what" is frustrating because 99.9% of the time that leads to crap service, overruns, and more crap work on top. the exceptions like say "move fast and break things" are ... exceptions not the rule. your company is not a facebook like special snowflake and using the snowflake argument to drive poor engineering decisions just makes you look silly. one essay i remember from ages back on Joel On Software was him describing working at a Jewish / Israeli bakery. the bread oven was rusty and broken on the outside and looked like crap. but inside it was spotless stainless steel, because the bakers knew that the inside was what counted, and any money spent polishing up the outside of the oven was just waste. that is an exeellent way to see the software / value argument - you have to know where the value comes from, and make that part fucking perfect. the rest can just be hung together with string. Any disagreements on which part needs to be perfect is really a misalignment if understanding the business
- andyidsinga 9y agocorollary to some of the points made in the post: - to understand one's value in $ terms, it needs to be measurable in some way. Some possible ways to measure: - for a product already being sold to customers, my features are helping retain customers (bug fixes, performance improvements etc) as measure by A/B testing or sales guys saying "that fix landed the sale". - for a product not yet being sold, my performance in building the product is helping time to market as measured by improvement in sales and marketing results : "we landed a field trial today with the features I helped implement" or "those demo videos have improved response to our marketing campaign" - for work in a large company, my performance helps my organization achieve some stated goal by its general manager. As measure by : "we got that thing done the GM laid our last quarter, his meetings with upper management were very positive and landed additional funding to the project" Interestingly, for each of these, value in terms of $ gets more and more difficult to measure. in my experience, working in smaller companies, value is much easier to understand, but the work tends to be "everyone sweeps the floor". In larger companies the work tends to be more specialized - and potentially more "cool" but driven by harder to pin down dynamics of the larger corporation organism. It also tends to be more "maddening" as the organization flip-flops around trying while seeking extremely difficult to attain growth.
- devingoldfish 9y agoThe claim that "we get our money from our customers" is, on its face, wrong. Of course we're paid by the company, not the customer. The simple truth this article misses is that your wage is simply the price of your labor, and it is the firm that is paying it. The "value you add for customers" (however that might be measured) really doesn't come into the picture. The job market is competitive, and the amount your company pays you is primarily determined by how much they would have to pay someone else to do the same job.
- ryanto 9y ago> the amount your company pays you is primarily determined by how much they would have to pay someone else to do the same job. This is true, but the thing you're missing is that there's not many folks out there that can add value for customers. That's why engineers who create value get paid so well, which is the articles point. I've noticed that engineers that get paid the most tend to understand the technical and business trade-offs that come from decisions they make.
- agentultra 9y agoI sometimes wonder if the vulgarity of capitalism forces us to think this way. You don't see lawyers, doctors, or capital-P engineers thinking this way. They have to think about the state of the art and practicing their craft with the utmost attention to detail. Anything less would be unprofessional. And yet we programmers hear this story time and again: you don't matter, your craft doesn't matter: _all_ that matters is getting that money. If that's what your company values then that's what they'll make you do... and we don't have any profession to back us up when we say, "That's not good enough." I suspect this is part of the story of how the Equifax's and the like happen: we prioritize profits over integrity and the consumer pays. If you, the professional software developer, refuse the company will simply find someone else who will. And they will probably hire them for less. And yet if we were to raise the bar, stakeholders argue, then programmers would not be affordable: producing software would be too expensive and nobody would do it.
- deleted 9y ago[deleted]
- mitchellst 9y agoProgramming craft does not matter because programming craft has no content. Doctors treat and fix bodily ills; their actions— the uses of their craft— are determined by the state of the patient. Similarly, lawyers' craft is determined by the content of the law. (The results can be encouraging or horrifying depending on whether the laws that apply to your time, place, and situation are just ones.) What determines the content to which a programmer's craft is applied? If it does not make money or serve the public good that your nonprofit addresses, why should your firm support it? I say this as a programmer who likes writing beautiful code. Nevertheless, when we look around, we see no equivalent of charity hospitals for coders, where philanthropists donate wings and endow chairs to advance the state of the craft. (Not to disparage what we do have: CS Departments, GitHub, some open source foundations are awesome, but do not reflect similar public standing.) Our craft is not valued on its own terms because the broader society does not believe it is inherently beneficial to them. In a day when facebook and twitter throw our elections open to tampering, uber does... whatever uber does, and everyone's even more addicted to Netflix than they were to TV, can you blame them? Lawyers are valued because they make society freer and fairer. Doctors enhance human dignity by caring for those made weak by sickness. Do you have an equivalently positive outcome for what our profession does when left to its own devices? If not, it's rightly difficult to appeal to the pieties of your profession with someone who does not share that profession. This isn't meant to be a rebuke, rather, a reminder that good skills are unhelpful unless put to good use. If you don't like money as a means of keeping score on that, there's plenty of work in the public and nonprofit sectors.
- deleted 9y ago[deleted]
- zumu 9y ago> If you want to spend your life crafting beautiful code with headphones on, you can absolutely do that. You will get paid just fine for that. But if you’re not influencing others and helping the broader team execute, you’re setting a ceiling on the degree to which you can contribute to the company’s output. How does building a stable, easy to maintain, extensible product not help the broader team execute?