Hacker News new | comments | show | ask | jobs | submit login
Three Paths in the Tech Industry: Founder, Executive, or Employee (ycombinator.com)
927 points by craigcannon 57 days ago | hide | past | web | favorite | 602 comments



This is rather true in practice, but I find it tremendously depressing.

I have found that the executive path is actually the one that most of the scumbags take, it is the one that attracts the most people, and those people are usually not likable, they're salespeople that sell themselves all day.

The third group, the one that actually creates value, is accurately represented as not as successful both in terms of money and prestige. I think this is a damn shame, and we should be striving to stop that. This is a good painting of how bad things are today, but instead of "tricks to game the system" i wish it layed out a path of how to build an industry that doesn't attract all those ambitious selfish (executives) people.


Thanks for the note - I’m going to think about this.


Here is a twist on this to think about.

Careers are made or broken on whether you get to be an idea person or an implementer.

If you're an idea person you get the lion's share of the credit for anything that goes right, and can always blame your failures on the implementor. Plus ideas are easier to come up with than implementations.

If you're an implementor you work hard, and then don't get much of the credit. But without implementors you simply don't have a product.


Is any of that true? Are ideas really that easy? Also these people aren't being paid for ideas. They're being paid for vision and the ability to guide that vision through to completion.

I've met FAR more competent implementers in my life than I have product owners. You seem (and others) seem to be arguing that there is some sort of market inefficiency here, but I don't see that.

And I say that as an implementer.


A common remark from VCs, e.g., John Doerr at KPCB (e.g., quoted at AVC.com) is that "Ideas are easy and plentiful. Execution is hard and everything."

Well, bad ideas are easy and plentiful, and then execution is hard and everything.

But good ideas are hard, and then execution is routine.

By an "idea" Doerr meant just some short, off-hand statement, say, at a party or over the family Sunday dinner table, some summary might tell a neighbor over a back fence.

A good idea, however, may come with a stack of solid background research on the market, the problem to be solved, and a really good solution, say, the first good or a much better solution, with good barriers to entry, etc.

Here's an approach: Pick a problem that so far is solved at best poorly but where the first good solution will be close to a must have for enough people and revenue per person to make a successful business.

Then find a good solution. The solution might have secret sauce which was needed to solve the problem (why the problem wasn't solved 10 years ago) and that can also be a big barrier to entry.

It would help a lot to exploit current, comparatively dirt cheap, computing. If you write all your own code, then likely you don't need co-founders.

Venture capital won't much help because by the time you have enough for the VCs to write you a check, you will already have enough in traction that you can monetize to have enough revenue that you no longer need, want, or will accept their check, BoD, term sheet, vesting of what you already own 100% of, etc.

The checkbooks of the VCs were important when a Web site startup needed to spend big bucks with Sun Micro Systems, Oracle, Cisco, etc., but those days are over. Now the prices for such things are WAY down and the checkbooks of the VCs much less important.


There is a discipline of actually doing the work that rewards competence. If you take a competent implementor, give them the title of "architect", and have them tell everyone else how their programs should be designed, the natural tendency is downhill in competency. I've met brilliant architects. I've never met an architect who impressed me that didn't code a lot.

But still, even among implementors there are frequently disagreements on the design that should be followed. And you see the same pattern. The person who wins the disagreement tends to get a lion's share of the credit for improvements, and often gets to skip blame if it fails.

If you win several of these in a row you may get offered a raise and title of architect.


At one level, “idea person” is a misunderstanding of the founder’s role; founders must execute, all day long. It’s not just the programmmers who “implement,” either.

At another level, I’ll admit that most founders I’ve worked for have excelled more at promoting their ideas, raising money, and hiring talent — top talent, no small feat! — than product ownership. In this case, the lieutenants who make the gears mesh and not jam are the heroes to me.


Competent product development is much more than "having ideas." It's not just a room full of under-educated monkeys in business suits generating random "ideas", mindlessly picking A/B test results or throwing darts at a wall. There's this caricature version of what they do that developers seem to have that just doesn't match reality. I wish my fellow developers would take some initiative to truly understand what product, sales and marketing actually do.


I think it all boils down to playing the blame game. It takes time to do so and implementing an idea takes a lot of time. Having an idea is the easiest thing ever.

I can have five ideas before lunch with time to spate on blaming the people who will actually implement them for the past failures of my "great ideas with poor implementation"

But engineers/implementers who get into politics have a huge advantage: they can produce proofs, especially in tech. Nothing is more scary for an executive type than an engineer who refuses to be bullied into accepting the blame.


But it really depends on how healthy your corporate culture is. I would say that in 90% of the companies, "technically correct" is just not good enough.


To be fair, the first and last line of defense for most tech people is to retreat into technical detail and present an apparently irrefutable argument that nobody understands. It is impossible from the outside to tell whether this is just the tech person being defensive and they are full of BS, or whether the tech person is right. So people eventually default to assuming BS.


Technically correct is not enough in a sane culture either. But the business side of thing is not complicated, it is opaque.

Be technically right, hunt the information that will make you correct business-wise. And you will be able to make a much stronger claim in the blame game that the guy who is just business-right.


Careers are fraught in any organisation that systematically allows individuals to take credit/blame for team efforts.

That said, I've met quite a few implementers that seem to believe that because it's their hands on the keyboard, no other activity warrants credit, all the way down to the guy who thinks that he commands "respect" (in the gang-sense) because he can shut down the Exchange server.


Can you name me an organization where individuals (particularly near the top) do not wind up with credit/blame for team efforts?


Can you implement your own ideas?


Sometimes. But if everyone simply does what they think best, the result does not add up to a sensible whole. Therefore there is a necessary tradeoff between doing what you think is a good idea, and doing what someone else in the organization thinks is a good idea.


Calling them an idea person is, I think, unfair. The idea is the simple part. It is taking this idea to market, getting people to implement it, that is not easy. I'm not saying the implementors deserve the level of credit they get, but reducing the organizers to simple 'idea person' is somewhat disingenuous.


Yep, that is the selling part right there!

It is one thing to take an idea to market when you are selling for companies like IBM, Accenture, Google, etc.

But when you have to sell the same idea on your own, that takes real skill and hard-work!


These paths are not mutually exclusive, which should probably be noted in the article as well. I know many who have done some combination of them, myself included.


Isn't just distributing the wealth more evenly?


I have a different (admittedly controversial) take, having been on the "tech ladder" for some time now (as a Senior SWE and Lead Engineer): most individual contributors overestimate how much value they actually provide, especially in the Bay Area. That isn't to say we're not under-appreciated and under-compensated (we are both). But realistically much of the time work we do is easily done by literally thousands of other people just as well. The same just isn't true of product development, sales and marketing. Any one of those three teams, staffed well, will account for well more than the value of the entire engineering organization.

Mostly this is a self-inflicted problem. Especially in the Bay Area, where developers tend to value CS ability signaling rather than the ability to work well with product teams and the ability to engage in practical engineering.

There's too much focus by developers on shallow things, like fad-following the latest frameworks, on pseudo-intellectualism or technology-purism (e.g. "coding is doing math", code "elegance", whether/how FP is just so much better than anything else, etc.), and trivia like programming language choice.


> The same just isn't true of product development, sales and marketing. Any one of those three teams, staffed well, will account for well more than the value of the entire engineering organization.

Why is it not true for them? Sales are not magic, it is a profession that can be learned. I have seen a lot of companies stating how important is sales, and how unique they are. It can't be true for all companies. It is like everyone thinking that they are above average, it is just not possible.

If your product is software, literally it is impossible that sales add more value than the engineering organization that builds the product. Without engineering organization, you don't have anything to sell. Without sales and marketing, you will also have a hard time. It is collaboration what brings success.

> There's too much focus by developers on shallow things, like fad-following the latest frameworks, on pseudo-intellectualism or technology-purism

This is usually a problem with recruiting. You get what you pay for. If your interviews are about technical expertise and you ignore basic persona-values evaluation and fit to build valuable features, you get that. And it jeopardizes the viability of a company. You need some really good experts, but you don't need everyone to be one.


>If your product is software, literally it is impossible that sales add more value than the engineering organization that builds the product. Without engineering organization, you don't have anything to sell. Without sales and marketing, you will also have a hard time. It is collaboration what brings success.

The distinction is that product development, sales and marketing can act as multipliers in a way that engineering seldom does. A tech company's growth is rarely due to the technical excellence of their product. There are obvious exceptions at the extremes, but very few of us are working for a Pied Piper with some truly amazing competitive advantage in technology.

For example, what would happen if magically Twitter's tech became 50% better overnight? That would certainly reduce costs, but would it lead to any growth? Would the average person use the service more if the tech was better? Would companies buy more ads? Would revenue increase?

Now imagine their product development, sales and marketing teams became 50% better. They could have actual product improvements beyond doubling Tweet length. They could instantly sell more ads. They could increase external partnerships to bring more attention to the platform. They would have all sorts of opportunities for added revenue and growth.


> sales and marketing can act as multipliers in a way that engineering seldom does

(I cannot distinguish product development from engineering as cleanly as you do, but on sales and marketing...)

Can't disagree more. At least with the definitions I have in my head, this sentence is logically inconsistent with such definitions. Engineering is the way you get non-linear leverages. Sales and marketing, almost always give linear multiples at best.

I feel once you have the "golden goose" leverage delivered by engineering in hand, you start calling it sales because that's the final step in conversion to $$$. Also, that's when the linear multiple provided by sales and marketing is the biggest in absolute numbers.

[But yes, if you call everything you see as "marginal contribution" engineering, and everything valuable "product development", then you tautologically "prove" your conclusion.]


interestingly, a lot of enterprise Saas software is "sold before its built", by which i dont mean its complete vaporware, but its a very common practice to build a shitty first product, sell sell sell, and only after the first 10-20 customers are on board, do these companies start to spend more on engineering etc. Even after that, in order to sustain the machinery of building product, you need to keep selling. I think both are important, but in the technical world we tend to seriously underestimate how important sales it. At the end of the day, you can have the best alogrithms, the most elegant code and the sexiest UI, but if you dont have someone taking it to customers, and bringing their feedback back, all you have is a beautiful product without a business.


This is why for most software (think about anything you run in your browser/phone/desktop pretty much that isn't mission or life critical) software quality, architecture and design ZERO VALUE. In fact that value it delivers is negative since it takes time and human effort to do it which costs money and there's no money to be made from say, correctness.


This is exceedingly common. It also makes a helluva lot of people miserable.


I agree it is hard to draw a line between the two, but there are some decisions that occur outside of the technology inolved that I would consider product development. Twitter increasing the character limit to 280 is a prime example. There is no technological reason why that should or needed to happen. It was motivated purely by the product. Although you could argue the initial 140 limit is closer to the tech side.

I also think that many people, especially in the tech industry, don't understand the scope of functions included in "sales and marketing". It isn't just sales people calling up customers trying to sell enough to reach their quota. It is nearly everything involved in revenue generation of a company.


One of the most common fallacies you hear voiced by software people is that polynomial/exponential is bigger than linear, because they ignore the constant factors that matter in the concrete cases in the real world. The same fallacy leads to bad engineering choices and bad business choices.


There is definitely a lot of truth to this, but when talking about exponential growth in particular, the growth is often so huge that it eclipses any conceivable linear function in practice pretty quickly.

Also, given sufficiently large numbers, better asymptotic growth always beats. So this is less wrong when talking about huge businesses.


I agree with you about the value of good engineering, but I think you underestimate the value of good marketing.

> Sales and marketing, almost always give linear multiples at best.

Counterexample: Apple's famous 1984 ad.


I knew something like that would come up, hence my use of "almost".

But I actually disagree with your example. I was expecting something like Dollar Shave Club to be used as a counterexample, where the entire value is arguably produced by marketing.

While I don't have metrics (and it is hard to even define a good metric to distinguish the leverage produced by marketing vs. excellent product development when they exist since day 1), I seriously doubt even Apple's 1984 ad had superlinear boost relative to the $ invested on it the ad had the product engineering was not good enough to sell itself.

In fact, I am not sure if it is fair to say the original Mac is an astounding commercial success relative to other computers at its time, unlike Apple II. I feel the ad was famous for its artistic value and post-hoc success of Apple, not much because it actually sold the product.

But back to the primary discussion, think about it this way: had Mac not been a revolutionary product that carried its weight, would that ad even meant anything? As in could you even sensibly run that ad for any product and expect good performance? (This is especially relevant since the ad is pretty abstract and non-product specific, so it is not crazy to imagine this hypothetical scenario.)


Good grief. The entire premise was that owning a Mac made you different, unique. People bought the thing because they identified with THAT not because of specs. How do I know this? Because everyone remembers the commercial and how it made them feel and almost no one remembers the machine and what it did comparative to other options at the time.


You have conflated cause and effect here so much it is hard to untangle just where you diverged from reality, but the 1984 ad was not as important as you think. It ran once. Once. It became important as an icon later, but "everyone" doesn't remember how the commercial made them feel because most of them didn't see it. The Mac was, at the time, such a marvel of hardware and software engineering and so radically different than what was available at the time that it almost sold itself. You probably could not have picked a worse example to try to make the sales vs engineering case.


The original Mac was actually not a very useful product; 128K of memory was enough to get a taste of the graphic user interface, but not enough to do much in the way of useful work. There was a flurry of initial sales to early adopters on the basis of the marketing, the potential, then it fell off. Sales only picked up again when the memory was increased to 512K. That tends to get forgotten nowadays because of what happened afterwards, but it's not at all the case that the original Mac sold itself based on its capabilities as a product.


Well, sure, if you define "value of engineering" to be more than "value of X" you can say engineering is more valuable. That would be a contentious definition, though.


Note that I am not focusing on "value" per se. I was focusing on leverage, i.e. where you can find a "multiplier", and arguing engineering is where you can find superlinear amplications of value.

It's really hard for me to imagine or come up with an anecdote where a sales process or marketing initiative has had more than a linear multiplier. It could be 10x, but even that is usually very big. Never exponential, or even quadratic (though in network effect businesses the quadratic amplification via marketing sometimes exists.)


> It's really hard for me to imagine or come up with an anecdote where a sales process or marketing initiative has had more than a linear multiplier

Have you ever started a company that successfully exited? Or managed a product from cradle to grave?

There is another comment in here about perspectives gained from taking on multiple roles. If you can’t think of a single case of a great salesperson adding multiples to a product’s performance, I gently suggest broadening your scope.


> If you can’t think of a single case of a great salesperson adding multiples to a product’s performance

more than a linear multiplier

Read more carefully.


How would you tell the difference between a high linear multiple and a low exponential coefficient? That hypothesis is nearly impossible to falsify and therefore nearly useless. The value in it is simply the encouragement to look for network effects, which are going to cause exponentiality.

BTW, ever heard of word of mouth advertising? That's by definition exponential.


Valid points. We could debate this, but I am already sick of this subthread; the point is I never said sales does not add value or that the value it adds is small, which the GP accused me of, in a rather passive-aggressive tone.


I don't agree.

I'm always in an engineering role.

Yet at multiple companies I've implemented A/B testing, come up with ideas for features, implemented them, tested them, and have seen growth of the bottom line in the 10-40% range.

I've heard much from product and marketing at the same companies about the amazing things that they are coming up with and how they will grow the company. I've tested those. Most of the wins don't reach the same range.

Now don't get me wrong. I'm not saying you don't need product and marketing. You absolutely do. But if you listen to the engineers who know what you can do, rather than treat them as cogs in the wheel, you'd be amazed at what can happen.


This is partly why I wrote what I did about it being a self-inflicted problem: most engineers simply don't take that initiative, and many of the ones that do are thinking of features for resume driven development more than for the company's health. They're too busy arguing about whether Rust is our savior or how dumb blub programmers are, etc.


>most engineers simply don't take that initiative, and many of the ones that do are thinking of features for resume driven development more than for the company's health.

There's no money in caring about the company long term. Increase in salary for an engineer comes in changing jobs, not internal promotion (which, for places where this is even a concept, is usually constrained by some arbitrary limit, where as job change depends on your negotiation skills and resume). We're optimising for what is successful.

>They're too busy arguing about whether Rust is our savior or how dumb blub programmers are, etc.

I know there are lame fan boys, but many of us are actually value focused and realize that a more powerful language is cheaper across the entire product life cycle. Having said that, I wouldn't feel too bad about using even Java these days because they've added enough stuff to lessen the impact of how awful the language is, that it probably doesn't make much of a difference. But you can't say that about every language, some languages are just too expensive time-wise to make sense in any setting.


> Increase in salary for an engineer comes in changing jobs, not internal promotion (which, for places where this is even a concept, is usually constrained by some arbitrary limit, where as job change depends on your negotiation skills and resume). We're optimising for what is successful.

I agree that there are limits internally, if your goal is to stay on the "tech ladder". Those limits carry over across companies once you get to a certain point, right around where you hit the "Lead/Principal Engineer" point. Once you get there, a switch to another company is more often going to be for technology and problem domain (e.g. to do something "more interesting") than for a promotion (pay increase). Promotion by job switching is less likely at this point simply because there are fewer positions of these types required.

It's different for a switch to the "non-tech ladder". Even "laterally" (e.g. "Lead/Principal Engineer" -> "(Senior) Engineering Manager") is effectively a promotion: the compensation is better and the leadership is more likely to listen. It also opens up more opportunities up the ladder internally.

> I know there are lame fan boys, but many of us are actually value focused and realize that a more powerful language is cheaper across the entire product life cycle.

This is by no means absolutely true. It depends strongly on the product and the duration of the life cycle, among many other things. Language choice sometimes has a significant impact which can be positive or negative. Most of the time it simply doesn't matter that much.


The answer to your original comment answered this. Engineers would avoid cv-driven-development if recruiters and head-hunters didn't use key-word based searches and rewarded developer CV riddled with most buzz, admittedly a bad thing. So I hardly see this as self-inflicted, it is wrong but that is what market is looking for.


Resume driven development is as much about developers chasing the new shiny as it is about dealing with the phenomenon you note. Perhaps more so, even.


More efficient engineering ships features faster, not just cheaper, which lets you respond quicker, which gets you more users/clients/your favorite metric.


Shipping faster is really just another form of cheaper. It isn't a linear relationship (the whole 9 women working for 1 month thing), but there is no question that dedicating more resources to a problem can help fix it quicker, especially with the frequency that companies are acquired in tech.

I am not sure that Facebook creating Instagram Stories to compete with Snapchat is a definitively better solution than Twitter buying Periscope to compete with Meerkat. Either way, you still need someone to think up those new features, communicate them to the public, and sell them to your customers.


I think that's the point he's trying to make this.

But who communicates this to the customer? How decides what features are built (in a larger company)? Who pitches these new features to potential customers?

At a big enough company where the engineers aren't the ones doing this work, the benefits of any engineering achievement is moot if those other 3 groups don't do their jobs well.


> The distinction is that product development, sales and marketing can act as multipliers in a way that engineering seldom does.

Engineering is the key multiplier.

> For example, what would happen if magically Twitter's tech became 50% better overnight?

What if twitter only needed 50-100 engineers?

What if twitter had an ad platform that was as good as facebooks or googles?

If the world had 50% better tech we could automate tens of millions of jobs.


>> What if twitter only needed 50-100 engineers?

Their IPO will suck because every wannabe big company must have lots of employees to raise more money.


"The distinction is that product development, sales and marketing can act as multipliers in a way that engineering seldom does."

If you don't have a product, you can multiply zero as much as you want, it's still zero. Engineering provides base value, everything else is just build on top of it.


What you are saying is true, but engineers are extremely fungible to almost all organizations. Engineers are far more replaceable than founders.


If you have a product nobody knows about, its objective value is also zero.


If you make a product that nobody needs, that's another problem entirely.


Whether the product is needed or not is irrelevant to my assertion.


Oh, come one, you don't need to be a marketing genius to create a product webpage, create social network presence, buy some Google ads or even start a Kickstarter campaign etc. so people can find you themselves. Being "invisible" at this age and time is only possible if you actively try to stay this way or make a product that nobody needs (I ruled out the former as it doesn't make any sense).


> Oh, come one, you don't need to be a marketing genius [...]

But your product does need some marketing, which is the point I was trying to make.

Marketing does not just "build on top of [Engineering]", they are codependent.


Of course, just as you need to sell it to make any money. I was talking about "marketing" and "sales" as in department sense, so what I want to say that you can run a company with just engineering department, but you can't run a company with just sales and/or marketing departments (in a product orientated business at least). Sure, it's probably not the most efficient way either. For example, in my previous job I was working in a small, niche company (optical equipment) that had only engineers (~40 total), CEO and an accountant and it was doing pretty good, we had hard times fulfilling all orders. All "marketing" we did was our CEO + few engineers going to the industry related conferences and shows to generate leads.


> Why is it not true for them? Sales are not magic, it is a profession that can be learned

Like software engineering. And like writing software, some people are better at it / enjoy it more than others. Software engineers and good salespeople are very well compensated because they're hard to replace.

> I have seen a lot of companies stating how important is sales, and how unique they are. It can't be true for all companies. It is like everyone thinking that they are above average, it is just not possible.

Most companies, particularly most start-ups, suck at sales. "Great engineers, shit sales" is a more common failure mode in Silicon Valley than "sold something couldn't be built." Also, "good at sales" isn't a one dimensional metric. There are different sales processes, some of which some people (and consequently companies) are better at than others.

> If your product is software, literally it is impossible that sales add more value than the engineering organization that builds the product

You're conflating how essential a step is to a process with how valuable it is. Mediating those factors is how difficult it is to replace the parts in the step. Consider, for example, an automobile assembly line. It would be incorrect to assume that just because the vehicle is useless without an engine, it is impossible for anyone to be more valuable than the person who mounts the engine.


> Most companies, particularly most start-ups, suck at sales. "Great engineers, shit sales" is a more common failure mode in Silicon Valley than "sold something couldn't be built." Also, "good at sales" isn't a one dimensional metric. There are different sales processes, some of which some people (and consequently companies) are better at than others.

Bad, derivative products hocked by hopelessly deluded people playing startup accounts for most failures. Over promise and under deliver kills even more.

Few truly good products fail because even a bad sales team can sell a good company to a bigger company that can capitalize on the deal.


Lots of good products fail because of bad sales and marketing. These very forums are a graveyard of "how do I find users?" threads.


onboarding an engineer - even a great one - is notoriously expensive, because they need to understand the product in extreme detail that a salesperson never will - not even close.

there are many good engineers, but they are very difficult to replace. in addition, more engineers does not always translate to faster delivery, so there is a natural limit to how many should exist to build out a specific product.

there are also many good salespeople and they can be trained in much less time and there can be many more of them.


No, there aren't many good sales people. No, they can't be trained in much less time. And no, there aren't necessarily more of them.

This is probably the most "I'm a technical founder and I have something to say!" thread I've seen here in a while.


Neither you, or your parent comment, provided justification. "There are many good sales people", "There aren't many good sales people". Plain statements, little reasoning. Both worthless.


> there are many good engineers, but they are very difficult to replace

These engineers tend to find themselves well compensated. They aren’t representative of most coders in the Valley. Similarly with salespeople, you have lots of meagrely-compensated glorified customer service people and then people with difficult-to-replace relationships.


I think it's disingenuous to say that it's a more common failure mode just because you see more of those failures. More realistically, if an organization has a good sales ability but no product, with some rare exceptions where people are hoodwinked etc., they just don't get to step up to the plate, i.e. They are not given the chance to fail because nothing happens and they don't get funded.


> If your product is software, literally it is impossible that sales add more value than the engineering organization that builds the product. Without engineering organization, you don't have anything to sell.

Anecdote as counter-example: a previous employer was approached by a vendor which offered a solution developed by "former NASA specialists" (I think it was to manage inventory). The total cost of deploying it was around a million.

We tried hard to stop the executives from going ahead with it, but around $400k had been paid by the time we managed to kill the project when it became clear that a. the vendor did not actually have a product and was using us as the R&D guinea pig, taking advantage of the data from millions of our customers and b. the "NASA" part referred to one of their developers who had briefly interned with a NASA contractor.

So, the sales organisation managed to "create" $400k of "value" (in the sense of hard revenue in their bank account) without engineering being involved.


> So, the sales organisation managed to "create" $400k of "value"

Yes, it's called "fraud".


I think this is more an anecdote to the example than counter example.


Another thing is that software is more mercenary while sales/marketing is more embedded. Theres more domain expertise that needs to be built and legacy folks that need to relinquish their positions. This requires more time and risk.

Though IMO the mercenary freedom exists only in theory as the true freedom which makes it worth it is blocked by the inane interview processes that develepers impose on each other. There is a dissonance in the way technical skills are supposed to be some sort of objective measure and the moat digging this culture creates. (It specifically allows in only a certain class of "technical")

Though taking a few steps back these are all first world in first sorld problems. :/


I agree and both disagree. I'm working right now for a client that is a large corporation that didn't do any of those "fad" things - and it is _tremendously_ costly.

For example, one team has spent several weeks and thousands of dollars to get another team's SOAP integration working correctly, when it would have taken five minutes in REST.

The codebase did not follow a "elegant" practice and is an absolute spaghetti mess. Things that should take 30 minutes take one week and this add tremendously to personnel cost.

I agree though that working together is tremendously undervalued. A decently smart person can be taught anything (which is part of the replacability problem you mentioned), but how to not be an entitled ass is nearly impossible to teach in a workplace environment.


SOAP was the fad before REST. And spaghetti code is usually the result of fulfilling customer's requests without taking (/wasting, depending on your perspective) the time to rewrite & refactor.

This'll probably come across as depressing to most of the engineers in the audience, but I don't see this as an example of a company that did anything wrong. Rather, it's a company that did everything right but did it too early. They followed the fad of the early 2000s; there was no way to know then that a better fad would come out in the mid 2000s. And they're still around (and a "large corporation") now, which indicates that from a customer & business POV, they've actually been more successful than ~99% of other technology companies founded in that era.

If you're successful, you too can get to have the kindergartners of today complain about what an idiot you are. That's the best-case outcome, though: more likely, nobody will use your code or it will be thrown away a year later for the newer, shinier fad.

(The more positive spin on this is that our industry actually is making progress, and quite rapidly. What other industry can you look at the best practices of 15 years ago and say "What idiots we all were back then!"?)


Spaghetti code and cumbersome integration methods are just forms of tech debt. Tech debt in any form isn't inherently good or bad. Just like financial debt it's a tool that can be used to achieve a desired business goal. When misused it often harms the company but won't be fully realized for several months or years.

Things taking a week when they could take 30m is your company paying interest on that debt. To determine if taking on that debt was a good idea you need a lot more context. e.g. the Cobol mainframes that run the financial system are difficult and expensive to maintain, but it's still cheaper than the alternative: rewriting those systems.

Most startups take on massive amounts of tech debt because it helps them move faster and the company not failing is way more important. Once a company is out of startup mode it should balance goals a bit more thoughtfully.


"Tech debt in any form isn't inherently good or bad. Just like financial debt it's a tool that can be used to achieve a desired business goal."

We should print this and hang it on every wall of every room in which a piece of code is written. It is the most misunderstood and misused concept of Software Engineering.


Regardless of how long it REST or how much you pump it full of SOAP, a spaghetti mess will still be a giant bowl of indigestible pasta.


I mean, a bad interface is a bad interface. There were a lot of issues with SOAP, but time to get a client going wasn't really one of them(the clients wrote themselves!). REST is generally a huge step backwards in that regard IMHO; I have the rise of proto bufs and gRPC to keep that opinion company though :)


> I agree though that working together is tremendously overvalued.

I think you mean undervalued.


Oopsie. Fixed.


Everything you listed is just a multiplier on if the technology actually works.

If you have a sucky multiplier of course your product won't do well but if it isn't technically executed right you still have a zero.


But that argument goes all the way down the value chain. You'll end up with something like food production > transport > tech. The chain can be as long as you feel too.

It is a radical proposition that a farm day laborer adds more value than an elite tech worker because 'the system would stop without food'.

The value add is controlled by the person who decides what "value add" is. That is the executive, original product designers and customers (who may well be represented by marketing in some businesses, I dunno).


Food surplus comes from mass production not farm hands. The guy who handles 20,000+ acres of crop is more productive than the average dev and makes more money.

http://www.cornandsoybeandigest.com/are-1000-acres-part-time... “One of the most difficult factors for many 1,100-acre or less farmers to accept is that, unless they have livestock, they're probably underemployed. Thirty years ago, 1,000 acres was enough to support Dad, me and three hired men. ... As one industry sage puts it, “It's not the 1,000-acre farmer that needs to worry. They can still support themselves with off-farm income. The guy who needs to worry is the 3,000- to 5,000-acre farmer who knows he needs to reach 10,000 acres if he wants to stay in business.


If your farm is too small, then lease it to someone who farms, say, 10,000 acres by leasing smaller chunks. Then get a job in town!


The reason this argument doesn't hold water is because the underlying infrastructure supporting the company as a whole is just a commodity. There is nothing special about the food or the transportation or even the server infrastructure that the startup uses, it's all fungible and thus there is an efficient market around it.

But engineering and sales for a single product are inextricably linked. If engineering does not create a good product, that directly affects the success of the sales people; and vice versa if the sales team sucks then a great products potential value can go unrealized.


Yes, we call that Society and as you're seeing Puerto Rico none of the tech matters if you don't have basic infrastructure. They definitely add more value than us.

Are they under-represented and under-valued? Probably. Just like IT, they only get noticed when things screw up or go wrong.


It isn't binary: value is created by all parties involved. It's just, in my opinion, that if we normalize the value created to be 1 for the product team, then engineering's value is less than 1, and sales and marketing is (more often) greater than or equal to 1, most of the time. Exceptions exist. But they're not normal, by definition.


> that if we normalize the value created to be 1 for the product team, then engineering's value is less than 1

Well yes, if we make completely baseless "normalizations" than that's true. Obviously, there is no reason to do that, but sure, if we do it that's the result.


An engineer's value can be exponential and can even go well beyond their own lifespan.

Sales and marketing impact is immediate and falls off over time while engineering's impact is slow and can speed up over time.


Right, at a start-up the value of product, sales, and marketing is huge compared to that of engineering. Most engineers can create an MVP that will deliver the promises of the other 3.

The problem is trying to scale that product once marketing and sales do their job. I think the value of each of these 4 changes depending on the company size and tend to normalize to 1 as the company scales to the size of Google, Amazon, FB, etc.


> That isn't to say we're not under-appreciated and under-compensated

This is possibly the most HN thing I've ever read. Bay Area developers are under-compensated?


Just because someone is paid a lot doesn't mean they're not under-compensated. Remember the sports team strikes? They were making lots of money before but they felt they weren't getting enough of the value they created so they did a strike and proved it.

Wages are (very purposely) not an efficient market so a group making more than most doing the same kind of work does not mean said group is overcompensated. It could be that the entire group is under-compensated, some of them just less so.


I think he is thinking in terms of shares of the company, not salary. Salaries in the Bay are obviously higher than anywhere else, but what people want is to become millionaires when the company they work for sells to a bigger company.


Doesn't everyone want to become millionaires though?

Seriously, discussions like this just show how out of touch sometimes this crowd is like.


Relative to the value we add? Absolutely. The under-compensation is even worse elsewhere.


If software developers add so much value they should start their own business. Then they'll see how valuable sales and marketing is


relative to demand and cost of living potentially


Just like how you say the work engineers do is not magic. That literally 1000s of other people can do it.

That's also true of marketing, sales, and product development.

Takes sales for instance, sales is knowing your clients needs, and knowing how your product fits into those needs and then having a shit load of conversations about how your product fits clients needs. There isn't any magic. You can contact more people, and you can convince a few percent more people to buy your product.


> You can contact more people, and you can convince a few percent more people to buy your product.

This represents a fundamental misunderstanding of how sales works.


I'd be curious what about it is wrong?


You are both correct and incorrect.

As others mentioned, product/sales/marketing/etc can all be replaced just as easily as developers.

However, and I think this -may- be your point, the work generated by those groups is understood by upper management as a key to success, whereas upper management likely does not understand that having the best tech is also a key to success (and, honestly, it's one that can many times be partially overcome by sufficient marketing, or overshadowed by bad product people, or...).


> the work generated by those groups is understood by upper management as a key to success

I think you could have left off the "as a key to success" part. Software engineering, as a discipline, is very hard to quantify and hard to understand. Every metric that anyone proposes for measuring the output and quality of work of a developer has largely been shown to be possible to game and not representative of good work. We wax poetically about an extremely productive day in which we got rid of 200 lines of code...no sales person would consider losing a customer to be a success, so you can see how that would sound confusing to a non-engineer. And the interview process is largely lampooned for asking questions that have very little applicability to the actual work being done and, yet, no one can agree on what questions a good candidate should be able to answer. Even engineers can have vastly different stances on what constitutes good work.

There's an old saying, "that which cannot be measured cannot be managed." A sales team can easily be stack ranked and their dollar value to the company measured to the penny. A marketing team can be judged by engagement numbers, inbound leads and other quantifiable results that are easy for an executive to understand. A product team's output is somewhat harder to quantify, but executives usually do take the time to understand their product and customers, so they can relate and have opinions on the work produced by the product team. Meanwhile, the engineers spend they day looking at text in another language, having conversations and arguments about bizarre made-up words like Hadoop, Riak and Mesos. They often have trouble communicating technical concerns to non-technical members of the team, including management. And seemingly simple changes in product direction are met with large time estimates and mutters of "redesigning the schema" or "scalability."

So executives decide to focus on optimizing and rewarding the departments that they can understand and engineering gets seen as a black box assigned to someone somewhat technical who's often only good at spin/messaging and not really a great technical leader. It's pretty undeniable that engineers create value. Even executives realize that. But the marginal value of one engineer over another is extremely difficult to know, even for people in engineering. So it's much easier to just assign them to tiers (SSE, Senior SSE, Staff SSE, Lead SSE, Architect, etc) and then treat them as fungible quantities.


Upvoted. Thanks for this perspective. I've had similar observations and thoughts, but haven't sat down to find words for it.


Attribution is critical. A salesperson who lands a big deal can claim it's their exclusive work. An engineer who is one of a dozen people working on a feature that customers like does not have a similarly clear number they can point to as value added.


As a manager I disagree. The right people are difficult to come by. Sure an engineer can be replaced - but in how many weeks or months, and what about the knowledge leaving the company?


Isn't this just also dependent on pay?

Let's take a ridiculous example, but if someone were to offer me, say, $1m (a year) to work on a specific key niche project (i.e. something that fits within my skill set and where I could add tremendous value) then I would happily move wherever around the world.

Pay more -> you'll probably get a (significantly) higher amount of qualified applicants?


You seem to assume its easy to sort the wheat from the chaff.

If you offer $1m per year (which is a ridiculous premise from the get go), you'll maybe get more good candidates (though a lot would assume there was something weird going on and would balk), but you'll certainly also get way more bad candidates, including many who are cunning and able to take up a lot of your recruiting bandwidth, and maybe cunning enough to actually talk their way in - making your problem worse.

It's just too simplistic to assume that throwing money at the problem will solve your talent problems.


Sorting the wheat from the chaff is Problem One you need to solve regardless of whether you offer below, at, or above market pay. I think the grandparent poster's point was that by offering well above market pay, you will have more of both (wheat and chaff) in your funnel so you'll be able to sort through more wheat. Assuming you have Problem One nailed you'll end up ahead of those offering below market (who might only attract chaff).


>It's just too simplistic to assume that throwing money at the problem will solve your talent problems.

Labor is a market exactly as any other: paying the highest price does not always get you the best quality but paying the lowest price always ensures you don't.


What you're saying is false, but what you're quoting is correct. I definitely wouldn't say "always".


I can't parse what you're saying. Are you saying the quote I replied to is correct?

In any case, I think always is close enough to fit. Yes, sometimes someone gets something very cheaply but that's usually because of ignorance or urgency from the selling party, deception, etc., etc. In a natural market interaction, if you're paying bottom dollar you are not and cannot be getting the best quality (unless you are in a scenario where the offering is flat: the best offering is also the worst).


> Are you saying the quote I replied to is correct?

Yes: that is what he is saying.

> always is close enough to fit

No.

It is very unlikely to hire top talent at scale, but it is still possible to hire top talent occasionally even for below market rates.


I've hired plenty of technically rockstar employees for cash strapped startups.

Those who get kick out of these technical challenges are willing to do it for nearly free - we only gotta make sure, their other needs are taken care of.


For a while; money isn't everything, and once they have enough of it, people will leave to chase whatever they're really interested in.

https://www.theverge.com/2017/2/13/14599186/google-waymo-sel...


Everyone leaves after a while. I don't see paying someone too much as an issue, to be honest.

That said, the people Google was after probably didn't (really) want to work at Google, and needed convincing. Plenty of people prefer working on their own projects and couldn't care less about being employed by Google, but will forgo that for a "sure thing" payday (and there is nothing wrong with that). Business transaction like any other.


Well, without radically changing the economic system, your compensation will be, at most, the cost of replacing you, and the gap between your compensation and that figure depends on the information gap, and the chutzpah with which you negotiate.

I'd wager that if developers renegotiated their contracts at the point where they were most irreplaceable on projects they would be able to extract a lot more money.


>I'd wager that if developers renegotiated their contracts at the point where they were most irreplaceable on projects

I'd wager that most executives would rather pay 5 people to do the job of 2 or even simply bury their head in the sand and not admit to themselves that replacing you is going to be more costly than let you have that kind of leverage.


You're right. It's critical not to let the troops catch a whiff of their individual importance or you'll have to start paying them closer to their actual value to you... and that's bad for profits.


Threaten to quit and see if you don't get executives offering you more money.


Most aren't in position of sending threats in the way of their executives.


>>The same just isn't true of product development

This statement is laughable. In almost 99% of the companies out there 'product development' is simple a placeholder to describe people who look at the results of A/B testing and say which design to go with. You could supplant a child in their position and it would barely make a difference in any value created.

Product development is the place where MBAs go to retire and for all practical purposes add 0 value to anything real. Mostly its UI designers who suggest ideas. Engineers implement them, a data analysis team crunches data and finally presents it in a pie chart. All the so called product manager does is look at which parts occupy a bigger chunk and make a yes or no decision.


Maybe that's true at companies selling to consumers (everyone is a consumer, so everyone can conceviably have valid ideas for new features). However, at companies selling to businesses, the developer is usually more or less clueless about the product domain (even if it's something technical, like CAD or data science) and has no useful ideas. It's the product people who (ideally) have decades of domain experience and talk to users from various companies constantly about what they would like to see added.


If you work for others as a programmer, then likely they will want you to have spent the last five years using the tools they are using.

If have your own business and write your own code, then you get to pick what you want to learn and use and stay with just that. And maybe you already know enough. E.g., if some parts of Microsoft's .NET are enough for what you need to code and you know it, then why rush off to Linux?

E.g., for my startup, I typed in 100,000 lines of typing with 24,000 statements in Visual Basic .NET; it all runs. And I know a lot more in computing but is not popular now. From just what I know, I can't be hired as a programmer, but I have no trouble programming for my startup.


The same just isn't true of product development, sales and marketing. Any one of those three teams, staffed well, will account for well more than the value of the entire engineering organization.

Okay, slash your engineering staff and double the sales people and lets see how you do.

How is any of that not done by thousands of other people as well? Especially sales.


Sales is more difficult than engineering. There, I said it.


For a certain type of person, sales is much easier - if not completely natural. For others, the same could be said about technical pursuits.

I don't think it's possible to make general statements that one is harder than the other, because it depends very heavily on the person involved.


I disagree. Sales is fuzzier than engineering and requires a different set of skills and methods to resolve problems.


They're both hard.

Rockstar salespeople are just as impressive in action as rockstar developers.


The skillset is fuzzier, but the results are not fuzzier, as reflected by common practices of sales compensation across the industry.


I'm sure selling mediocre, repackaged, off the shelf tech is harder than engineering it. Standing on the shoulders of giants gets us a long way quickly (and easily). IMHO engineering is more valuable; I define value as the expansion of possibilities & opportunities (to sell).


I've come to the realization in my short career that 90% of my time will be spent on activities that produce 10% impact and 10% of my time will go towards activities that have 90% impact. But the 10% time producing 90% impact stems from the fact that I spent the other 90% doing mundane work and understanding the environment/product/whatever problem am working towards solving.

As an example, my company uses Django and the first 6-8 months I have spent hours debugging what would be a stupid issue like misconfigured Django or missing url. Eventually, that led me to optimizing the version of shell_plus that my company was using improving its bootup time by 200%(this was a rather large codebase). That's an instant 200% gain per developer/per django shell load and is probably the most impactful thing I've ever done. We estimated it would save around 6.67 hours of developer time per day(2 minutes saved - was originally 2.45 * 200 developers * 1 shell load every day)


What was the optimization?


Our version of shell_plus was trying to handle aliased models that were defined in settings.py.

In order to do this, it was maintaining a map of {appName: [list of imports]}.

When constructing this map, for some reason, it n^2 the imports - i.e., if an app "foo" had models "Bar", "Foo", "FooBar", then the import strings were, "from foo import Bar; from foo import Bar, Foo; from foo import Bar, Foo, FooBar" instead of "from foo import Bar, Foo, FooBar". Some apps had 50+ models, so instead of 1 import line for these 50 models, it was executing 2500 import lines. I fixed this so that it executed only one import line instead n^2 import lines.


>"whether/how FP is just so much better than anything else" Hey, FP IS much better than anything else! Lol, this is me


thats just if you sell shit that nobody wants but its marketing/sales reposnibility to sell it, then sure marketing and sales are more imporant. but if you create a product that is realy solving some problems then, the product is important and the team that created it.


"...most individual contributors overestimate how much value they actually provide..."

Am reading "Deep Work" right now. In it he touches on this while explaining how hard it is to measure, and how no reliable attempts have turned up by those who try. This applies to C*O level on down, no one is sure how to measure this.

So when you write:

"The same just isn't true of product development, sales and marketing."

I call BS. There is no measure out there that can accurately gauge the specific contributions of an individual or a team within an org, in knowledge-centric work these days.

There are outliers. A team will luck into a bigger than expected sales deal. Or engineering stumble into a way to provide the same performance with less servers.


> the one that actually creates value

No. We all create value. Businesses, when running smoothly, are like a well oiled machine. Nothing is redundant. Garbage is collected. Businesses is cutthroat industries cannot afford to be redundant.

I always wondered why all cars had 4 wheels. Turns out, the 3 wheeled car is horrible (see Top Gear), a 5 wheeled car is pointless, and a 2 wheeled car is a motorcycle. But when you're a kid, compact jet propulsion or anti-gravity doesn't seem so difficult. But that's also why you're a kid.

I started a business thinking everyone can be their own executive, worker, and entrepreneur. They could handle their own responsibilities, manage their work, and do that work. Unfortunately, we had to go through a lot of them. Utopia wasn't working, but they were also miserable. It wasn't what they wanted, expected, or enjoyed. They all loved the idea though, including myself.

Fast forward five years, and my car has 4 wheels. I am the "founder". I decide where the business should go, lay out the work that needs to be done, and hand it over. The "executive" is then responsible for that work getting done. They hand it over to the "employees" in a way that is efficient and accountable. The third group just needs to accomplish the tasks they promised to do for the money they agreed on.

I'll see your scumbag executive and raise you my wrench throwing employee and delusional founder -- that would be me. I'd like to think 4 years ago, but who the hell knows.

If you wish to manage responsibilities, join the managers. If you wish to drive the ship, join the founders. And this is your correct career path.

An employee who believes they are better than the founder or executive is already holding a wrench.


This is exactly right. I've been in all three roles and all three are essential to success.

I can also relate to the notion that the engineers do all the work, which was a sentiment I shared early in my career before I understood the kinds of problems executives and founders had to solve. I cringe when I hear an executive say "How hard can it be? Get some bright bulbs in here and have code up a solution that doesn't have these problems." or when an engineer says "The CEO just parties with 'investors' and blows sunshine up our ass while we actually build the thing he is gets credit for." or when a founder says "I wrote the foundation this company at a dam hackathon in 24 hours and you're going to take 6 months to have an alpha release?"

I have seen again and again that people who haven't been in the role they are criticizing have constructed an understanding of it that doesn't capture what the actual role entails. Or in the the crowd funding case completely under estimating to cost or effort to do some aspect of development they have never done before.

If the company is hitting its milestones, people know what they should be doing, and the problems that pop up all seem that they can be overcome. Then you know all three classes of people are doing their jobs well.

When things take forever to get done, nobody knows why or how the thing they are working on fits in, and every week there is a new problem that changes all the priorities and efforts, then you know you're on the way to being dead as a company.


You don't really understand the value of a role until you see someone great for the role.

This adds to a lot of the bad feelings. Some people are great at marketing, but if you work for someone mediocre then it's easy to see how you will think they are worthless.


On the flipside, you don't know if someone's great until you have seen someone mediocre. They may be preventing all sorts of fires, but because you don't even know those fires could exist...


This times 100.

It is easy to sit around as a dev and complain about what the suits are doing, when the devs do all the work. I don't think the same devs would be very happy if they switched jobs for a day (and in the same thought, I don't think the suite would do that well coding either).

(Edit: I have only done the dev and founder role here. But I just had about 10 executives tell me what kind of treats I was in for. I believed them, just from what I had learned in two of the roles).


There are/were six-wheeled cars that got shut out because of market forces unrelated to how well they ran in competition. Google Tyrrell's Formula 1 Six Wheeler


Yes, there are always exceptions.

The point is, what works works, and if you're forced to make things work, before you know it, you'll find yourself looking awfully similar to those in a similar situation.

There is a reason why these business structures are so common.

They work.


This is totally a sales pitch.

You can tell because when confronted with an alternative that works and is viable you get the age ol' "Yeah well anything is possible"

Of course, what is current was also possible, you're ignoring the fact you're buying into the current dogma and repeating it.


> you're buying into the current dogma and repeating it.

Maybe, had I bought something.

I did not buy my corporate structure. I built it.

It sounds like you're saying all cars have four wheels because everyone is buying into the current dogma and repeating it.

I'm saying, if you're building a car from scratch, there is a high likelihood you'll arrive at four wheels.

As a matter of engineering, certain structures are common for their physical and functional nature. The more specific the parameters of behavior, the more specific the implementation.


I'd argue that what you did is even worse of a crime then. You didn't buy into it, you sold it. Still selling it, unwilling to try other things, not very visionary in my opinion.

Also, not all cars have four wheels, not all cars are gasoline powered, mechanic evolution is quite infantile whereas static business operations are not.

I would argue that also the industrial business ops are still infantile as well.

Just more sales.


Even worse of a crime? Could you be more hyperbolic?

unabst did try "other things". Did you read the thread?


Yes, otherwise I wouldn't have responded.


Is it that they're the only way that works? Or is it that everyone just assumes they're the only way? E.g. Valve took a radically different approach to management and organisational structure and seems to have been very successful.


Valve is largely paralyzed and if you aren't in the group of cool kids most of that self-actualizing stuff in the HR document/propaganda material doesn't really apply to you.

Enough people have left because of it that the bloom is well off the rose.


Of course not... hence the exceptions, and room for innovation, and opportunity for those seeking that innovation.

But if you just need something that works, copying a wheel is easier than reinventing one. Better yet, just buy one.

Furthermore, understanding the reasons why the most common wheel is what it is will provide invaluable insight into making a better wheel if it comes to that. It will also tell you the market forces or anything else at play. The reasons why anything works will exist and be real, if that thing that works exists and is working already.


> The third group, the one that actually creates value, is accurately represented as not as successful both in terms of money and prestige. I think this is a damn shame, and we should be striving to stop that.

You may like Eric Dietrich's book Developer Hegemony[1]. He talks about both why the third group is less successful and how people within that group can potentially improve their situation within the current system.

> I have found that the executive path is actually the one that most of the scumbags take, it is the one that attracts the most people, and those people are usually not likable, they're salespeople that sell themselves all day.

I've seen the sliminess as well, but regardless of how ethical you are, in order to be successful in any domain you must be prepared to defend your interests (which people might perceive as "scumbag" behavior) and convince others that you have something of value to offer them (i.e. "selling").

I think it is possible (though difficult) to be both successful and moral, but success isn't everything. I think certainly possible to have a fulfilling life and not be successful. But (and I'm not claiming this applies to you) I would caution people in general against getting stuck in the rut of telling themselves that they value things other than success and at the same time resenting those who are successful.

[1] https://www.daedtech.com/developer-hegemony-the-crazy-idea-t...


> He talks about both why the third group is less successful and how people within that group can potentially improve their situation within the current system.

Are you able to provide a cliff note or two about why they are less successful and how to improve their situations?


Why are line level engineers less successful? In short, the Gervais Principle[1]:

"Sociopaths, in their own best interests, knowingly promote over-performing losers into middle-management, groom under-performing losers into sociopaths, and leave the average bare-minimum-effort losers to fend for themselves."

What to do about it? These things:

* recognize that as software professionals we own the means of production

* learn the business side of software

* form partnerships with other developers such that the distinctions between worker and owner, suit and techie, no longer exists

* shift focus away from developing software according to a spec, and towards being a provider of overall business efficiency (often achieved through software).

Note that this is focused primarily towards developers working in the IT cost-centers of (generally non-technology) businesses.

[1] https://www.ribbonfarm.com/2009/10/07/the-gervais-principle-...


Note that engineers who do this become Sociopaths (in the MacLeod sense) - suddenly they are running a business, hiring employees, and taking every advantage they can, because if they don't, they're Clueless. The rest of the Ribbonfarm essay series expounded on this a bit more thoroughly - many of those Sociopaths are actually Losers until the right opportunity presents itself.

There isn't actually a way out, on a systemic level. On a personal level, though, you should be very honest with yourself about which of the three categories you want to be, and go after it. People who refuse to accept the trade-offs or deny that there is one are by definition Clueless.


> Note that engineers who do this become Sociopaths (in the MacLeod sense)

Which is actually what Dietrich is advocating, with a careful caveat: these developer partnerships only hire other Sociopaths (or Opportunists, as Dietrich calls them) insofar as it is possible, and generally avoid growing large enough to need a gooey Clueless middle.

The MacLeod system describes organizations of all sizes, but only reaches its full flowering in large enterprises.


I haven't read Developer Hegemony, but the book Managing the Professional Services Firm by David Maister is all about the structures present in other professional services work, e.g. law, accounting, engineering, etc., even car mechanics! :-) A ton of it is shared with software, so if you are a freelancer or trying to start a dev shop, it is great reading.


There's a good book I read recently called Developer Hegemony, and I think you might like it.

It breaks down the archetypes within companies, talks about what it takes to succeed as an employee or an executive, and then discusses an alternative route that we software engineers might be able to take.

Here's a blog about the book [0] and the book itself [1].

[0]: https://www.daedtech.com/developer-hegemony-the-crazy-idea-t...

[1]: https://leanpub.com/developerhegemony


Hah! didn't see your post before I submitted mine :)


The "scumbags" you describe are the ones that exhibit a strong "need for power" as described by McClelland. Engineers tend to have stronger "need for achievement", eschewing the power grab.

But organizations today and perhaps in the past have always rewarded those who attain the power. Perversely, if you want a place where achievement (ie doing the work, building things) is rewarded properly, you need someone with that mindset to suck it up and win the power game.


Yes, yes and yes. Logged in after a long time to up vote on this. I think it takes 2-3 years for people to "get it." As you have mentioned it is indeed depressing. On the flip side, 40% of the employees are slacking off, another 40% is tinkering with their ideas (thereby not giving 100% to their employers), and the remaining 20% are still in that 2-3 years of getting it. It's not surprising that most startups and companies prey on these youngsters of the trade.

p.s. That was rather negative response. May be it's the ecosystem and how things are.

p.p.s. Good post and stuffs like this should be taught in CS schools.


You have to change the way money/funding is acquired, otherwise the pressure structure and hierarchy for will lead to this. This system would fall apart - in a positive way - if we have a good quality of life with Universal Basic Income. People could then work on projects without requiring an external source of funding, and so then the best projects/platforms/systems could evolve over 5, 10, even 20 years - without pressure from VCs wanting any return at all.

VCs have limited attention and those who are best at being loudest are likely to capture that available attention - similarly some people try to win arguments by being louder and making more noise than others.


If engineers desire money and prestige (like executives), then the first question is "how are they different from the so-called scumbags who desire money and prestige?" The more you want money & prestige, the more you share a key characteristic with those people.

But let's leave that aside for the moment. On a practical level, if engineers are to achieve money and prestige, then they'll have to (and here come several different ways of saying the same thing):

- sell themselves

- play a power game

- play politics

- ask for money & prestige, in all the different ways including dressing and speaking in a way that signals to money-and-prestige-bestowing people that you should get money and prestige

And they will have to concentrate on this and get good at it, apply the tactics & techniques, and succeed. That's how executive scumbags do it. This takes a fair amount of time and effort, so you'll have to spend a lot of your time on it. Nobody is giving away money for free without even being asked. And nobody cares about raising engineers' salaries as much as engineers do, so it's unlikely you'll find anyone to do it on your behalf. You either ask for it until it happens (selling something, selling yourself) or you say "well heck I wanted to be an ENGINEER" and spend your time doing engineering, and don't worry what's in the other guy's pocket. Screw him, he probably has an ulcer and his wife's a harpy!


> I wish it layed out a path of how to build an industry that doesn't attract all those ambitious selfish (executives) people

Given that ten thousand years of human history have utterly failed to produce any system at any point in time where the value-makers are rewarded over the salespeople, I don't think any such system can be made. At least executive positions aren't quite at the level of a winner-takes-all competition and you have a plausible chance of making it to that level.


I actually find "founder" is the route most scumbags take. Most of the ones I encounter take credit for other people's work and contribute little value. They also do a great job spending other people's money.

Next would be Employees. Jeez, those guys are the worst. Always thinking the ship will sink without them. If only the executives would listen to them the company would be on the right path.

Get off your high horse. You look foolish to all of us executives.


>> If only the executives would listen to them the company would be on the right path.

Founder is an employee, whose executives wouldn't listen to them.

I can see how it could be easier for you to "tune out", but from the Wozniak's mouse to Nokia smartphone presentations, your smirk is actually exactly correct: Employees make or break the firm. The ship will sink without them. Executives do not sufficiently listen to their employees.


This is a popular perspective among some technical folks but it's a bit insular. You could tar employees with some tag, there must be space to separate good and bad executives.

A lot of technical folks seem to have very little understanding or even interest in what for instance marketing and sales do. There are generalizations and often anecdotal knowledge that passes for understanding.

Developing software is just one small part of the process of creating value. Software does does sell itself. Creating demand and getting customers is incredibly difficult, expensive and unpredictable. If your target is advertisers based on users then acquiring users and advertisers is equally challenging.

As a thought experiment, get the best technical team and develop a product. Now after it is done, then what, how to do make money, how do you sell it or get users?


I overall agree with your sentiment.

I would though not agree fully about where you assume value is created. Usually, developers / middle managers do not create value. Mostly they are implementing ideas of others and in these ideas is most of value concentrated. I would say they deliver value but don't create most of it.


Doesn't that depend on your definition of creating value? Im biased because I'm a developer perhaps, but I think that these ideas would all be theoretical concepts if these developers weren't actively building them.

Perhaps I have a pessimistic view of the industry, but I've worked at 4-5 startups now (4-5 because one I'm on the fence about calling a startup) and I've come to find that the most value was always "created" when the devs and middle management (product) worked closely together to deliver and hustled/bustled without being blocked by some upper management bullshit. As soon as these companies grew, and these 250k-300k a year "executives" joined, everything slowly went up in flames. This is anecdotal, but it's an issue I've come to notice through personal experience in our industry.


This. Seen the same thing in 3 startups. Add me to the anecdata.

It would be awesome if we could get statistically significant numbers of people to report on this effect, although how to avoid selection bias etc. is beyond me atm.


Happened at a company I worked for after we were bought by a larger corporation. And we were a company of 500+ employees.

Although we had a CTO that grew up with the company (used to be a programmer there) that reported direct to the CEO at the smaller, now we have no CTO and at least 5 layers in between us and the new CEO.


It sure depends. The way I think is that it starts with an idea, ability to preserve the idea, develop it and maintain its essence through iterations with others. Still it is the idea that is making the difference at the start and working around that idea that makes difference at the end.

I was developer, and I was middle manager and I understand the sentiment fully. There are many aspects of reality that higher level management has to deal with which are not usually what they want reality to be but in practice you can not change it.


> There are many aspects of reality that higher level management has to deal with which are not usually what they want reality to be but in practice you can not change it.

The issue I see here is that there are plenty of companies that are very successful and have a small hierarchy and very little hoops to jump through.


It's a good philosophical question: A company creates a great product. What person actually created the value? The product visionary who thought of the idea? The developer who implemented it? The manager who approved the budget allowing the work to happen in the first place?


You're implicitly making a common mistake confusing value creation and value capture.

Yes, it is true that developers writing the software for Google's search engine and Gmail and other products, particularly the early developers who were writing core functionality before it even existed yet, are creating value. But are/were they capturing the full value created? In general, no. To the extent they "captured value" only came in the form of salary/benefits/etc. So they captured some, to be sure.

In highly successful companies who create hugely successful products that create tons of value, the actual capture of that value is absolutely not shared equally. This is in part because the risk was not shared equally.

Just as in successful companies, unsuccessful companies that ship a product that does not do well or fails completely, the developers who created it still captured a salary along the way. The investors and others who put in money or time and energy for little or not pay (in exchange for equity) were the ones with the most risk.

Bottom line... everyone involved in company-building and product-building create value along the way but value capture is generally concentrated for very good reasons.


They're concentrated for reasons. It's highly debatable whether those reasons are "good".

We all take risk. I could find myself working for a company that doesn't make it, or just decides to fire me at a moment's notice. Losing my job and not being able to find another one means I might not be able to feed and house my family. That's real risk. On the other hand, most investors are pretty well off, and can weather a few startups failing. They're likely not going to get to the point where they don't know if they can continue to house their family for the next few months.


"they have more so its ok for them to lose some" - is a flawed logic. The reasons are "good" because they incentivize behaviour. An investor is willing to put a chunk of his money into the startup because he can expect a good return, why else would he take risk on people? An employee is not inherently risking to "lose" anything by taking a job, they risk not gaining something for a while if the job goes, but that's different from proactively putting skin in the game.


I'm not saying it's ok for them to lose some, I'm saying that they're not taking on the risk that everyone claims they are. And yes, an employee very much is risking to lose something. If they get fired or the startup goes under, now they face a very real situation where they might not be able to feed or house their family. I highly doubt that these investors are even close to that point.


"If they get fired or the startup goes under, now they face a very real situation where they might not be able to feed or house their family." this is true for all jobs, my point is, unless you are working for free, you arent giving up something that you will lose. Time yes, but thats why you need to make sure you get paid what you think your time is worth.


> This is in part because the risk was not shared equally.

Developer joining a startup risks almost as much as a founder. He leaves his existing job for a promise of a salary, and if this startup fails - is left without a job, and possibly, without a salary either. This happened to me, and I was paid for first 2 months out of 6 I worked there.

> The investors and others who put in money or time and energy for little or not pay

Investors still have most of their money, I am left without a job, unable to pay my mortgage and possibly buy food.

Imagine this: I put $X, you put $Y into an investment. If investment is successful, I get a 100$, you get $Y+$X-$100. If it is not, we both get nothing. Would you consider this investment fair? No sane person would put a money into an investment fund, expecting a fixed value in return, but employer-employee relations are exactly that.


This is a foolish question, but that's the point. There is simply no objective way to analyze this.

It all comes down to which group the people signing the checks value. I often say "pay is a social construct" and this is what I mean -- there's no objective basis for any of it. I think devs are paid better in the Bay Area than elsewhere just because we're assumed to be more important here relative to other parts of the US/world.

There is no objective reality here, just a bunch of beliefs.


Ideas don't create value. Ideas represent the potential for value.


The deliberate process of developing ideas, otherwise known as "product development," has value.


I've not worked anywhere where product development was the only group to come up with an idea that made it into the final product.

My last gig was terribly silo'd as far as responsibilities go. But people go to lunch and happy hour together. Product dev would call out anyone that contributed, even though their team got the kudos because of process (despite the teams being cool, I left because management was shite).

These things bleed into each other constantly.


> I find it tremendously depressing

It's worth noting that this is simply in the "Tech Industry" which is much different than a "Good Life", "Adventure Quest", "[religion] walk", or any other form of purpose/success-based ranking.


I'm relatively new to the workforce so take this with a grain of salt, but I think this is a false dichotomy. People who are less agreeable, more assertive will make more money because they negotiate more on their own behalf. The poster child for these people, especially from the dev's point of view, is that of a brogrammer/scumbag/dick stereotype, and by definition they make more noise than the kind and also competent engineer.

You could also say that humankind is still stuck in an evolutionary stage where in most places, being dominant is the best signal of "value". In a Tim Ferriss podcast, Ray Dalio actually mentions that disagreements at Bridgewater can take on different forms, because some people are less suitable for verbal, thinking-on-their-feet sort of debates, and might be better suited for long form (like Hacker News threads) debates.


Paul Graham literally built YCombinator's legacy off the backs of tearing down "pointy-haired bosses" and offering an alternative path to MBA executive leadership, which is the surest sign your industry has stopped innovating and has been fully converted into a cash cow for financial institutions.


>the one that actually creates value

What value is value if it can't be sold? Yes, there's intrinsic value in doing things because they need to be done but most of the work done in offices around the world derives its meaning from its worth to a buyer.

This being so(?), is the employee necessarily worth more, as you seem to imply, just because they are mashing away on tools rather than engaging with buyers or regulators, strategizing, and scheming?


Plenty of scumbags take the founder route too. :) And I've met many engineers in my career who would fit the jerk description as well.

Having operated in all three roles, all are incredibly valuable. Great leaders enable their teams to be more than the sum of their individual members (employees). But I would opine that the leadership roles come with significantly more risk, which is at least partially responsible for the money / prestige.


seibel's definition of executives included this tidbit: "politics are usually as important, if not more so", and that seems to be the sticky bit.

the premise underlying your lament is that we should distribute compensation based on direct contribution to the product. but we simply don't distribute value that way. first of all, how would we accurately, objectively and differentially assign contribution for the success of a business to the contributing members? i'd guesstimate that an average US company might distribute value this way: owners 45%, executives 20%, employees 35%. you seem to be alluding to a distribution close to executives & owners 0%, employees 100%. are either of those correct? what would be the fair way to do it? you'd have to answer that before you can figure out how to get there.

and as distasteful as it may be, the way we seem to assign value _is_ political. we assign it based on an ability to take credit and argue for a larger share. we assign it for cultural values, like bravado and charisma. we don't really assign it for economic contribution, like commission for direct sales or compensation for risk, no matter how much that appeals to our rational economic minds. the distribution of value is exactly based on the political skill which you lament.

how do we change that? well, that's like asking how do we upend the currently accepted social hierarchy. and that's a big question.


I think you might bundle Founders in as super-employees. Executives place themselves above Employees but then won’t take the risks that Founders do.


I think that as with everything in nature, it's not about the silver bullet. Sure, the employees create "something" because they are told to but if not for founders vision and executives execution they may not produce any actual value. You need all 3 to go from vision to reality.


> the executive path is actually the one that most of the scumbags take

Hmm.

Personally, I have tried to take all three paths. I find it creates the largest amount of potential.

Employee Hat: Develop stuff for the day job.

Founder Hat: Bootstrap by night and learn what it's like to be an owner.

Executive Hat: Work up the ladder by wearing the employee hat and bring what you learn as an owner/bootstrapper back to the day job.


It depends, in modern digitization there is plenty of room for mangers who started out on the productive end. It does require extra education, organizational understanding and people skills, but the sales bit isn't really a plus outside of contract management.

Most sales people in IT are employees.


I've thought about that quite a lot lately. Here is the strongest explanation of why things are like that and why it's gonna be very difficult to change.

For at least a million year, you would have improved your chances of survival by sticking with a physically stronger mate than you are. This guy can beat the wolf when you cant, and maybe more importantly here, he may be able to beat the other tribal chiefs when you cant.

Guess how bad people stick to this habit even today. They literally have a brain forged to command them to do that. In practice what happen is that people will confirmation-biased you, they either gonna find out everything you do well, or everything you do badly depending on how badass you are. They will fill forms and say: "look, here are the reasons why we promoted him".

From what I've seen, even at Amazon which is a big geniuses recruiter - and therefore should be able to crack this problem - (amazon also have a form "reasons not to promote" which, if you're following, is kinda smart but mostly wishful thinking), people get promoted mostly based on the following leadership principle: the guy who's most likely to beat the wolf is gonna be promoted. I've experienced it first hand.

There is a light in the tunnel though. From my observations, I can tell that Amazon, for example, is able to recruit based on skills. Note that at this point, the social bonds aren't made yet which is why it works. This might also explains why you go up the ladder more easily by getting recruited - aka move diagonally. So the best thoughts I've been able to come up with is that, somehow, promotion should try to be like recruitment. Both intuitively and counter-intuitively, I think people should get promoted by people who don't know them, by some sort of recruitment process because we know we can fix that one. In any ways, I guess there is a fantastic startup to be made here.


unfortunately, it seems feelings are a bit raw in this thread (a lot of people seem to have had a lot of bad experiences, and don't feel appreciated, which definitely sucks).

But i'd guess i'd say as a member of the likely scumbag group, i feel like you aren't really trying to see the multiple perspectives here. As someone else said, we all create value. It's rare successful companies can afford to keep people around who don't. It's much more likely "they don't create value in ways that you value", or value that you see. I think one of the things definitely holding you back here is the inability to see it from these other perspectives. You are telling yourself you understand people's motivations and goals (you think they are ambitious and trying to sell themselves to get ahead), but i don't think you really understand the perspective, just your story of it. And you definitely, even in these few sentences, have a clear bias and story about a ton of people.

" i wish it layed out a path of how to build an industry that doesn't attract all those ambitious selfish (executives) people"

I think you need to question your assumptions a lot here. You are assuming that such an industry could exist, or that it would be successful. You are assuming (as mentioned above) that your group is the only one that creates value. If that was really true, do you really believe the other groups would still exist?

Why wouldn't someone, in each industry, already have made a successful company that doesn't have those roles, and because they produce much more value, taken over?

I could believe you don't value what they do, but like the author, i don't believe that deserves the judgement you seem to. Assuming your definition of value is the right one, or better than others, is not a good place to start a real discussion from.

I think you would do well to rely less on personality stereotyping and more on understanding if you want to get to the place you desire (where the ambitious, selfish people you see, aren't causing you the annoyance they apparently do)


This is actually a pretty good reason to move from group 3 to group 1. If your goal is to be part of group 3, but are unable to find an organization with a healthy culture, then there may be an opportunity to build your own.


Then you end up with the "grassroots politician" problem: you go in to fix a problem but realize the money is just too good (now that you're the one getting it) to change the system.


Are you motivated by money in this situation?


Or the power or whatever. All I know is it seems to always turn out this way. The current generation can't be the first ones to ever want to change this, yet the system is as it is. This is my suspicion of why that remains the case.


a good small business/early startup is basically #1 and #3, and none of #2.

unfortunately, it is a _whole_ lot more work and a _whole_ lot more stress, and is thus the road less traveled.


I agree with you. The third group is also the first people to get laid off and thrown away when there is an economic downturn.


Actually execs have less job security than the third group. The execs' value is largely tied to their existing employer (vs. having transferable skills like the third group), and they are very vulnerable to random reorgs within the company, so it is not uncommon for them to be fired and not be able to find something comparable somewhere else.


I'd say the salary more than compensates for this.


No, that would be contractors :)


How many multiples of the average salary does a SV tech worker earn?


How about freelancing? I've been doing that since 1995 -- and my income and happiness have never been higher.

Pros: - Work on what you like, with the people you like - Potentially very high salary, definitely more than you would get as an employee - Want to work on side projects (e.g., software, books, and courses)? Go for it, and benefit from multiple income streams.

Cons: - You're running a business. That requires time, as well as skills/knowledge (often learned the hard way) that are completely separate from programming. - You have to market yourself (until you're good enough that people contact you). No marketing, no work. No work, no salary. - It's harder to do when you're married and have children. (I started when I was single.)

In many ways, freelancing is like the "founder" described in the article. However, the article also talks about teammates and a financial plan (including funding). Plenty of successful freelancers make good money just by themselves (or maybe 1-2 junior people). And I definitely never intend to take investment money.

Not everyone is cut out to be a freelancer. But it's a very viable option, beyond being a founder, executive, or employee. And I can tell you that many of the founders, executives, and employees I meet as I travel the world teaching Python are quite jealous of my satisfaction.


    Plenty of successful freelancers make good money just by themselves (or maybe 1-2 junior people). 
Great point. The underappreciated thing is how much stress bringing a few other people to your freelancing brings. Suddenly, you realize that all these things that are obvious to you (when you "flow" working alone) need explanations and coordination and planning and checking and ...

You may find yourself at a substantially reduced income (because you have to pay these extra people), but without the increased productivity / revenue to show for it. There's like this uncanny valley between freelancing and having a stable team / process structure (aka company).

For me, building a proper consulting company around machine learning / Python services took the better part of 4 years. Along with considerable stress & hair pulling. Sometimes I long for the solo freelancing days...


> There's like this uncanny valley between freelancing and having a stable team / process structure (aka company)

Perfect one-liner. I've found myself at the edge, and sometimes going in to that valley, for years. Finding the combination of people and process to get through that is more work than most people imagine, and a whole lot of risk. You get to the point where you can hire/contract one other person? That person better tick a lot of boxes, or you better be able to ramp up to X people quickly. Having a whole lot of effort in to one person, then to have them leave, loses you a whole lot of time/money/effort. Getting to a team of 4-5, which I've seen folks do, reduces that risk a lot, but figuring out how to get there and remain stable ... haven't done it myself, and have seen others try and fail (and some succeed, to be sure).


If you freelance, there are three ways to earn more: work more, charge more, or hire. A few years ago I made a spreadsheet to model charging more vs hiring some people. The problem with hiring is that you have to spend a lot of time on unbillable work, and also suddenly you have to sell enough projects to keep 3-4 people busy. The risks are higher and you might need to hire 3 others just to break even. I decided that I would focus on just charging more. :-)

But I've also started a small partnership with two other excellent developers, and that has been working very well. I don't have to manage anyone, but I have help when I need it. And as a firm we avoid some of the "market for lemons" freelancer stigma, so we can charge more. Also with 3 of us the chasm to eventually hiring others is maybe easier to leap. I think this is a great way to go!


I actually look at the "employee" strategy as very similar to freelancing. As an employee, I see myself as a single-person business, and the companies that I work for are my customers. Just like a freelancer, I choose what companies I want to work for (though I only work for one company at a time).

One of the perceived downsides of being an employee is that you can't "be your own boss", but I don't think it's very different for an employee to be accountable to his/her employer than for a founder to be accountable to his/her customers or a freelancer to be accountable to his/her clients.

The only way to truly "be your own boss" is to become wealthy enough that you don't need to be accountable to anyone (for financial well-being).


Cons: Insurance and pre-existing conditions.

Not to put a damper on your post, as it sounds like you have had good success. But this is a very real thing for many people. When I graduated and went out into the world, I needed insurance, and this was before the ACA, which meant that my pre-existing condition was not something that would be insurable, at least at any decent rate. The ACA fixed that, but now you have the GOP attempting to return things to how they were before, especially for pre-existing conditions. They failed now, but they're not going to stop. So, for many people, currently the climate is not one where they could go without a group plan that they'd get at their employer.


You're 100% right... in the United States.

In other countries, this isn't even a consideration or thought, because health care cannot be denied, and is independent of your job.

I grew up in the US (through college), and returned in graduate school. Paying for health care as a grad student + independent consultant was horrifyingly expensive, and I'm lucky that I was able to do it.

In Israel, where I've lived since 1995 (except for grad school), there are lots of reasons not to be a freelancer -- but health care isn't one of them, I'm happy to say.


It never ceases to shock me how big a factor health insurance is for US folks. The fact that it can influence your career choices to such an extent is just crazy.

Otherwise: +10 for freelancing/contracting. It's a genuinely different and attractive option for folks to whom "employee" seems an OK fit but not a perfect one.


Getting political for a moment... it's disturbing that we've had health care fundamentally tied to employment (in the US) for decades now. I don't quite know how you break this down. I wouldn't think it has to be 'single-payer' to get past this but... I don't know.

> for many people, currently the climate is not one where they could go without a group plan that they'd get at their employer.

It's been this way for decades. 20+ years ago I remember talking to people about freelancing, or starting their own business, and the same reasons came up "Oh, i've got this medical condition" or "we can't afford to lose this insurance".

I can't speak to the 60s or 70s, but for the bulk of my adult life where I've been aware of this issue, it's been like this. :(


> I wouldn't think it has to be 'single-payer' to get past this but... I don't know.

For a start, eliminate the tax discrimination that makes employer paid health insurance cheaper.


From a tax standpoint, as an independent contractor, my premiums are 100% deductible. But I don't get any sort of 'group rate' discount.


But for regular employees there's a different tax treatment when they pay for their own health insurance, isn't it? (Not an American myself.)


I have to assume their is, if you're purchasing directly for yourself, but are also considered a full-time employee of an employer that doesn't offer it to you.

Hrm... found this, to explain it...

http://www.healthedeals.com/articles/are-health-insurance-pr...

" if you’re self-employed and claiming the self-employed health insurance deduction on Form 1040, you don’t have to exceed the 10 percent mark. That’s because you’re writing the premiums off as an adjustment to your income rather than as a deduction."

This is what I do.

The standard approach many folks take is to "take a deduction" (which occurs at a different point in the tax calculating) - and for that, you can only deduct any amount that exceeds 10% of your "adjusted gross income". In my case, I'm adjusting the gross income by deducting the insurance expense there. That may only be something I can do because I'm not an employee of anyone? I do this every year and it's still confusing as heck to me.

But the original point stands - anyone that is purchasing health insurance should be able to not pay any tax on the premiums. Or... no one should be able to(employee, employer, freelance). Level playing field theory and all that jazz...


This seems like a better option to me than the "founder" role in the article.

How did you find your first clients? You mention you're traveling the world teaching Python (which sounds awesome!) -- do you consider that "freelancing" or are you taking client work in addition to the teaching?


I was lucky, but my story isn't unusual: When I started freelancing, my former employer hired me to do some projects. This gave me a financial cushion to start finding clients. Most of them came through word of mouth, although speaking at conferences and user groups helped.

For most of my career, I did development work, with some occasional training. But over time, I found that training (a) was more fun, (b) paid better, (c) allowed me to schedule in advance, and (d) didn't mean getting angry calls about bugs in the middle of the night. Plus, it was a great way to specialize and thus become better known for one thing.

When I started to call myself a trainer, rather than a consultant, I started to get calls from companies I hadn't heard of. Not only does being a specialist with a clear focus make you stand out in companies' minds, but my former students remember me, too -- so they recommend me when they switch jobs, which is pretty common in the high-tech world.

I definitely consider training to be freelancing. I have someone who works for me, doing day-to-day development on projects, and I'll occasionally do that myself. But right now, I mainly do training, a bit of consulting, and am working on products (including http://WeeklyPythonExercise.com/) that I want to supplement my consulting/training income.


I've done freelancing and have worked remotely as an employee. Though the former brought in more money (which is heavily dampened by the increased tax and loss of various benefits), I so loathe the administrative hassles that I'd gladly take half the overall pay in order to avoid it.


I don't know where you live but consulting agencies usually also offer payrolling: they manage all the admin/tax/pension stuff and charge less than 10%. Some even charge a flat rate (I paid about 120% of a single day's wage, but I've heard of people paying 80% or so).


I'd be interested to know where you've seen this. The consulting agencies I've seen will typically bill $90 - $100 an hour, and then give you $50 an hour. This comes with 2 weeks PTO and 5 holidays. The rest of the time you better be billable. Sick days are not factored in.

Also, the health insurance is bundled in to the compensation package, and if you don't need it, they're not going to increase your salary.

When you say "charge less than 10%", do you mean to say that if they bill the client $100/hr, that you will get $90/hr ?


The advice I always give to a new college grad is try and get a job at one of the big tech companies.

The work and the mission may not be exciting, but there is huge room for growth and often the large companies have programs especially designed for career growth for new college grads.

But don’t get stuck. The job will comfortable. After a few years it’s time to move on. Maybe you’ve found a few folks to cofound with, or maybe you just have a good lead on a much bigger role. But the only way to really advance is to leave — most big companies have artificial limits on salary growth and promotions. You can always go back later.


Not to mention, you'll be paid enough that you can easily pay off your loans, and you can hopefully put a good sized chunk away so you'll be more able to weather the startup paying less.


It sounds very stressful to work at a major company


Eh. Having worked at a Defense Company, a unicorn and then a Big 5 tech company I can honestly say the work life balance is probably the best at the the Big 5.

At Defense companies you're both clearly a cost center and a cog in an unfathomably large machine. Imagine a combination of Kafkaesque and Chtulhu.

At a Unicorn. You learn a lot but only because you work insane hours. Also you're paid under market wages because your job is sexy.


Very much agree here. I've done the same to a lesser extent (defense contractor, maybe a Big 15, failed startup, and then freelancing).

Freelancing is pretty good in terms of work-life balance as well, although it can feel like an endless pursuit of finding projects (interviewing, selling yourself, etc)


I've found the opposite to be true. In a big company you usually have a strict role and responsibilities, know what and when to do, there are established procedures for basically everything and if something unexpected happens, you know whom to call. In small, young (startup) companies you are forced to be jack-of-all-trades, take responsibilities depending on situation and there's nobody around to give an advice. Sure, it might be fun to be that-guy-who-keeps-everything-running when everything works fine, but when production server stops, you have no idea what has happened and nobody to call, all the fun ends very fast. Both ways have their cons and pros and my advice would be to try both, to see which one suits you best.


Regardless of which path you'd like to go down, learn some basic financial planning, frugality, and learn to live like a miser. It'll pay dividends, both figuratively and literally.

Regarding the executive path, or more generally any management role, learn early on if it's for you. If you're the type that gets caught up in human interest stories, considers it inhumane to fire low performers, or generally believes in a sense of fairness to the world then forget about it and stick with being an employee. It's better for your own sanity.


I agree with your first point entirely. Figure out cost/benefit before making any purchases.

However, I disagree with you second point. You seem to be saying that good managers should be sociopaths. That is simply not true. Some managers can operate that way, but the great managers that I have had in the past are the ones that truly empathize with and take care of their employees. This pays dividends in work output from those employees. As I've moved into management myself I have incorporated this mentality. As for firing low performers, the result is almost always better for both parties if it is handled correctly (again, empathy). If they were given sufficient opportunity and still cannot complete their job, then there is a reason they are a poor performer: they are not in the right position. Don't believe that empathy precludes you from management. It's quite the opposite.


Underrated advice. As they say: "it's not what you make, it's what you spend". Personal expenses will inevitably determine financial stability, for the vast majority of folks.


> If you're the type that ... generally believes in a sense of fairness to the world then forget about it

I thought this when I was younger, and so I stuck with being an employee for a long time and didn't aspire to learn management/executive skills. But in doing that I was exposed to the many reasons and mechanisms that "Productivity can be blocked by bad management" - one of the cons of being an employee mentioned in the article.

Now I see that being a good manager or executive takes skills and that doing it well has huge benefits to productivity and sanity for everyone in the org and not just myself. I think a lot of managers and executives suck at their jobs, but I am now more interested in learning those skills and exploring that path and I wish I hadn't ruled it out so quickly earlier.


For someone who recently graduated and quite clueless about financial planning, do you have some resources to get started?


The usual generic financial advice I give is:

- Maximize every retirement vehicle offered to you (max 401k, HSA, etc).

- Pretend that any money you sock away for retirement doesn't exist. This is best done with automated withdrawals so you never even consider it money in your checking account.

- Learn to cook. This doesn't actually save much money at the individual level but is huge for families.

- Set up separate accounts for expenses and savings. Most payroll setups allow you to automatically divert funds to multiple accounts. This lets you automatically put $X in your expense account and $TOTAL - $X in the savings account. Again, the idea is to never consider that money spendable. It goes into a lock box.

- Shoot for a 50+% after tax savings rate. It sounds nuts but it's actually easier than you think. The key is to not bump up your expenses as your income increases. You might not be there when you first start out but if you're increasing earnings 5-10% per year you'll get there quite quickly (particularly in tech).

- Never buy a new car. They're for chumps.

- Never lease a new car. That's for the biggest chumps.

- Once you've built up an 8 to 12 month nest egg of reserve cash, start allocating the rest in a diversified portfolio. Pick securities from the trading company that don't have transaction costs (large discount brokers usually have in house mirrors of popular ETFs for this).

Stick on this path and you'll eventually be sitting on a decent nest egg. Plus if you've reined in your expenses, if you decide to go the founder route you'll have plenty of runway to pursue your ideas.


> - Never buy a new car. They're for chumps.

> - Never lease a new car. That's for the biggest chumps.

Disagree on the leasing if you have your own company. The lease payments are all interest and deductible from your income. Sure, you don't end up with a car but if you do a 36 month lease, your new car is under warranty the whole time.

I've seen too many people suffer from the false economy of used cars. If you are lucky (or a skilled mechanic), you can benefit, but if not, the repair expenses and vehicle breakdowns become a large drain.

I agree that financing a new car is just a depreciation hole, but you need your wits to avoid being screwed over when getting a used car. You just never know what's been done to it.


> I've seen too many people suffer from the false economy of used cars

Just get a 1-2 year old low-mileage CPO vehicle. It should still have the original warranty active. Ideally you should also target brands with great warranties like Hyundai (100k miles/10 years). This is as far as I can tell close to the optimal financial strategy for car ownership.

Personally, though, I do buy new, and I pay cash so I never, ever have a car payment. I hate the feeling of paying off a car over years as it depreciates. I really prefer to just get it over with and then enjoy knowing that I totally own it, no strings attached.


Seems like you're asking for trouble from the IRS if you lease a car for personal use and call it a business expense no?


Avoiding new cars is not something I agree with.

A new inexpensive Toyota Corolla will have cheaper financing, fewer miles, and a longer warranty and fewer years at the starting to get expensive to maintain stage.

You also have to price in the true cost of an old car once it reaches the age of unreliability if you intend to drive into the ground. Just one failure on a road trip can result in expensive alternate transportation, towing fees, expensive and unreliable repairs, your time etc. Having a young reliable car has value and how much value it has depends on whether you have more money or time.

Used cars are over priced IMO. There is an argument to be made RE trading in cars at 100k before you need to do the tires, brakes, plugs, transmission fluid either the first or second time. So many things aren't priced into cars correctly. Depending on how much you pay for mechanical work it's overall cheaper and lower risk and requires less of your time.


If you want to extract the most value, and you have multiple cars in your family with 1 car being not mission critical, then you should always buy new, keep up with maintenance, and use them until they’re run into the ground.

As long as you have 1 car that someone doesn’t absolutely need, or at least everyday, then you have time to shop around when your oldest one breaks down.


Just buy eg a three year old Toyota Corolla?

(Only speculating. Out of personal preference I only live in places where you don't need a car.)


As a once-a-decade new car buyer, I think the problem with this strategy is the risk profile. There's a decent chance that the 3 year old car will be fine, but the risk is higher - and a lot of buyers that hold on to cars for a long time would view an unscheduled car purchase (due to a reliability issue) as worse than getting the very best deal on the purchase price.

Buying a new car every other year is for suckers. IMHO, buying any car every 3-4 years is for lesser suckers. Part of how you get to the comfortable decade on a car is to buy new and take care of it.

.. and, of course, this all goes out the window if you find cars interesting or exciting, and therefore want to buy nicer cars more frequently just because you enjoy cars.


On these notes, you might take a look at the following:

https://www.robinhood.com/ Robin hood is a free stockbroker. They make money from loaning money and collecting interest on leftover funds.

https://www.mrmoneymustache.com/ Mr. Money Mustache is a blog about saving. He mirrors many of the above points and has a lot to share about how he reached an early retirement at 30.


> - Learn to cook. This doesn't actually save much money at the individual level but is huge for families.

I'd say it can save a ton of money at the individual level and is likely much healthier, and often time as well (probably biased because I can passively cook because I understand the science of cooking)

My example meal that is paleo friendly is grilled chicken breast and frozen vegetables; my dinners cost ~ $3/day that way. Add in rice or quinoa for about $0.30/day.

If you're cooking more complex meals the savings or nutrition might not be as much - or if your grocery store is far away or expensive.


Any recommended reading on passive cooking? Sounds like something that would be really useful for me.


Hmm. I haven't read anything about it;

Some tools come in handy

- George Foreman cooks both sides and shuts off at a temperature. A little experience teaches you when a chicken breast is juicy or drill

- Oven cook timers (i mostly use the oven for fish/potato trays) are one of the most underrated and underused "automated" things that we've had for 50 years.

- Typically hard to mess up covered or steamed vegetables or potatoes; they have a "natural" alarm; is the water overflowing or do you smell at all (the water is low). Use enough water that'll it'll evaporate as you turn the burner down.


Look up eg Sous Vide cooking.


If you really want to save money on food, just fast frequently, saves a ton of time too.


This is an excellent comment, I want to second every single thing said here.

To follow up this point:

> - Once you've built up an 8 to 12 month nest egg of reserve cash, start allocating the rest in a diversified portfolio. Pick securities from the trading company that don't have transaction costs (large discount brokers usually have in house mirrors of popular ETFs for this).

Here are a couple of simple, low-cost all-in-one options that get you that diversified portfolio without you having to think about it. Pick one:

https://investor.vanguard.com/mutual-funds/target-retirement...

https://www.fidelity.com/mutual-funds/fidelity-fund-portfoli...

There are plenty of others, but those are two that I'd recommend in a heartbeat.


Optimize your taxes, and invest in the lowest cost, most diversified funds you can get. (That's mostly index funds.)

Optimizing your taxes can mean investing in your own home. That's the opposite of diversified, but in a lot of countries the tax advantages are just too big to ignore.


Good advice, the cooking is fun if nothing else.


Start with Scott Adams' financial checklist: https://www.mattcutts.com/blog/scott-adams-financial-advice/

Note the item about hiring a fee-based financial advisor. I hired one starting a few years ago even though I am pretty good at this stuff, but I think they're especially helpful for newbies to establish good expectations and habits.


I'm not sure it is clear what fee-based means in the article. There are some that get a commission based on the products that they sell. In other words, the mutual fund that they use they might get a cut of. A fee-only adviser is one who takes a certain percentage each year. This is the kind that you want as it is in their best interest to grow your account and they won't move your money unnecessarily just to generate commission. The ones that get commission based on products are making money in hidden ways, but they are making money. Much better to have it up front and out in the open.


I thought fee-based means you just pay them a fixed fee you agree on up front? (And their interests are aligned insofar as they want repeat customers and you to tell your friends to use them?)


You are thinking of fee-only, which sounds very similar, but is vastly different from fee-based. Fee only is what you want.

As it happens, Scott Adams appears to have meant the exact opposite of how he’s been quoted! Scott specifically meant to warn people off financial advisers who charge a percentage of assets.

Fee-based as a label appears to exist purely to confuse unsophisticated consumers, by sounding so similar to the (good) fee-only label.


Good point. The intention (in my post and presumably the ones I referenced) is that the financial advisor should be paid only a fixed fee by her client and not be biased like a commissioned salesperson.


The other pieces of advice are all good resources. Something that I am learning is that sometimes the "financial planning" advice you see has the goal of maximizing $$$. Realize that it is your money and you can spend it how you want to.

With that said, be realistic about the trade offs you make, you can spend $30 on food and $10 on coffee every day if you want or you can buy a $30k car in cash in three years if you eat on $10 a day[0]. Good financial planning allows YOU to make informed decisions about YOUR money.

[0] ($30 (expensive food) + $10 (coffee) - $10 (cheap food)) * 365 (days in a year) * 3 (years) = $32,850 That is almost a Tesla Model 3 ($35k standard)


Good resources already posted, but this is also worth reading as an intro to thinking about income + costs of living as it pertains to early retirement: http://www.mrmoneymustache.com/2012/01/13/the-shockingly-sim...


Absolutely. Dave Ramsey's approach is probably my favorite. Basically, don't buy it if you don't have the money for it. https://www.daveramsey.com/


I'd say that isn't enough. Don't buy it unless you honestly believe that your life will be better for having bought it. Take the time and really think about it before making a purchase. You'll be shocked how much useless impulse buying the average person does.


Personally, it's so difficult for me to find out how to calculate value. I'm sure ultimately there is some formula thats perfect for me, but who the hell knows what it is. For instance--I've basically stopped touching my PS4, but this new game came out 2 weeks ago which I wanted to play. I figured, I'll probably get bored of it in under a week, but I bought it anyway. And of course, as predicted, I was bored within 1 week and haven't touched it.

Granted, I got probably like 10-15 hours of gameplay out of it, but there went $60 + tax. Is the $4-6 an hour to play it worth it to me? I honestly have absolutely no idea. During the game, I had fun and lost track of time, but I didn't better myself or anything, and mindlessly passed time. I guess the philosophical debate of what is worth doing is left to another conversation..


I guess at least you know that it was just entertainment, and didn't delude yourself. Not worse or better than watching a movie or reading a novel.


I have found that Dave Ramsy is has really good advise if you are in debt, need to get out, and have no idea how to do it. I think it isn't very good advise if you are getting out of college and make 6 figures.


The guy at https://www.youneedabudget.com explained this stuff very well to me. But this was years ago, when his program was a bunch of emails. You may have to just check out the free trial and see if it is helpful to you.


This is my condensed, actionable notes & advice: http://ro.vu/notes/finance/2014/how-to-build-and-maintain-we...


Consider reading "Early Retirement Extreme" but s/Retirement/Financial Independence/g. Working towards financial independence can bring a wealth of benefits even before you reach it. There is also an active forum for the book.


I recommend Ramit Sethi's book, I Will Teach You To Be Rich.

Don't mind the corny title. It's full of practical and solid advice. And unlike many books, he gives you actionable steps to follow through with the advice. That's what makes the difference.

More

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact

Search: