Playing the devil's advocate here, but why is the concept of free-agent developers who (a) command huge premiums, and (b) prefer working on short, intense sprints instead of with one employer, still not here yet?
I'm not saying 10X Management is an example, but why can't individual programming be valued like, say, acting/singing etc.?
Many consultancies work on this model, particularly in specialities where it is extraordinarily difficult to find anyone qualified or to retain them on W-2 payroll for a year at a time.
Hate to toot my own horn, particularly as I no longer do much consulting, but if a hypothetical software company said "OK we have a product and it works but we can't convince our Dev team to build marketing plumbing and they don't know where to start even if we ask" one could hypothetically have called me up, gotten advice like "You should probably do lifecycle email", and if you were incapable of shipping that yourself in two weeks I could fix that for you for $X0,000.
It works similarly if you need a crypto system validated, etc etc.
From what I gather (mostly through blog osmosis), you kind of fell into that career through the experience you had marketing BCC. How would you suggest someone do this intentionally, and in varying specialties?
That is, how do you decide to specialize in a marketable niche? Sure, if I already knew the marketing business I could probably worm my way into doing marketing contracting. Similarly, if I were an expert in cryptography I could start fielding requests.
What if, however, I'm just a proficient developer qualified in relatively mainstream technologies. By simple analysis of economic principles, I'm not highly valued due to the availability of general talent, so I have to subspecialize in some valuable niche. But how do I choose that specialty ahead of time? I can always choose an arbitrary specialty, but it's possible the demand isn't there.
My specialty, for example, may be in compilers, but I have an inkling feeling that being able to untwist some truly horrific legacy Win32 COM garbage may be the more lucrative endeavor. How do I test these theories without wasting a huge amount of time and money?
How do I test these theories without wasting a huge amount of time and money?
Take buyers and sellers of technology services out to coffee and ask what they buy/sell and what they would buy/sell but for the impossibility of finding it in the market.
For example, you could take me out to coffee. It's no secret what I would tell you there, since it is practically in 50ft tall fire letters on my blog: When I was consulting, I made systems which made software companies lots of money, most typically by applying engineering tactics to marketing/sales ends for them. The prototypical deliverable was "Your SaaS app now sends a lifecycle email campaign." My sweet-spot client is a software company with $10 million to $50 million a year in annual sales. (There exist hundreds of these, most of whom will never even be mentioned on HN, in any context.) I am not particularly a supergenius with copywriting -- I just apply a bit of formula, horse sense, and personal experience with experimentation, and it works much of the time. I picked it up with a bit of reading and a lot of doing. Do I think that the average HNer could do this 6 weeks after having announced an intention to seriously start doing this? Yes. Can my average consulting client find someone to do this full-time for them? No, not for love or money. Do I think this niche would support a consultancy full-time? Yes. This tiny little sliver of the global economy would support ten clones of my consultancy, selling 30 weeks a year, without coming close to satisfying market demand for this service.
Price is a signal that the market generates to cue potential service providers that there exists unsatisfied demand for a service. The fact that the market does not clear in e.g. marketing technology or cryptosystem verification or what have you, even at rates in the $20k+ a week region, should signal "Well, that would be a lucrative practice to be in."
It boggles my mind that you say the average HNer could do this in 6 weeks. Not in a "I don't believe you sense" but rather in a "that's so outside of my mindset that it doesn't compute."
And this is coming from someone who remembers reading stuff from you on Joel's Business of Software forums, so it's not like I haven't seen the full path from BCC to consulting to AppointmentReminder . . .
Personally, I fall into the trap of thinking, oh, I couldn't do that unless I master <insert obscure tech at the Knuth level here>. Which is clearly just not the differentiating skill here . . .
Are you a younger adult? One thing that may surprise you with a decade or so behind you is how much of the big stuff was only ever a few solid weeks of pushing away.
Building and running a company worth lots of money when we sold it, yes, took 8 years. But getting the company into the right trajectory to do that --- fits and starts, blind alleys aside --- was nothing like that much work.
Some things take "10,000 hours" to get good at, but a lot of really valuable stuff takes more like 100.
I'm actually older than most HN'ers. But a bit of a "late-bloomer" to being paid as a hacker.
Just didn't ever know that entrepreneurship was an actual option for people. Coming from a risk-averse and somewhat fatalistic family/peer group wrt work/career control hasn't helped.
One of the best parts of HN is actually reading contributions from people like you and Patrick that break down what are frankly self-limiting thought patterns.
Isn't the fits & starts & blind alleys the actual work involved in getting the company onto the right trajectory? Empirically, the vast majority of time spent in startups is in that category, and if someone has figured out a way to reduce the time, you'd think they'd be rich by now. (Okay, you could argue that YC is a good example of an organization trying to systematically reduce the time spent getting a company on a breakout trajectory, and they are getting rich off it. But even then, a majority of YC startups never make it.)
You make it sound so simple, but how did you find your first customer?
>Take buyers and sellers of technology services out to coffee and ask what they buy/sell and what they would buy/sell but for the impossibility of finding it in the market.
My first customer was someone I knew from the Internet, who had a clearly achievable path to a programmer making him money. Without spilling his beans: he ran a decently sized business doing something on the Internet and was not a developer. There were some fairly obvious things about that arrangement which I could fix. I fixed them.
Thomas' company was, IIRC, my 2nd or 3rd client. He knew me from HN and the ability to talk about a topic of interest to his business over a cup of coffee. Take a look at his writeup of our conversation. You can reasonably assume that our consulting gig involved humming similar bars.
As to who in general buys programming services: go to meetups or events. Talk to people. If they buy, problem solved. If they sell, ask who (in general terms, if you're uncomfortable) buys from them. To a first approximation, everyone who has ever hired a programmer will again, at some point in the future, again hire a programmer. Same goes for consultants, etc.
If you just want to learn about realities of industry work passively, doing it for a few years is also an option. After you've built CRUD apps in a non-tech employer for 6 months you should have a 98% accurate mental model of which businesses routinely buy software in a fashion other than available-totally-off-the-shelf.
Another heuristic you can use is that one white collar employee represents $200k a year in revenue and that anyone with $10 million in revenue probably could benefit from custom software development.
I know programmers who fit your description but they are rare. I'm talking about extremely high-paid contract developers who operate as individual contributors and not as hands-off consultants. Those guys are brought in as firefighters on critical projects that are failing and have looming deadlines. For example, one of them has helped out on many sports video games, which have yearly releases on an immovable schedule.
Beyond that, most contract ICs are used as temporary headcount padding that are subject to much laxer hiring standards than full-time ICs.
I'm not saying 10X Management is an example, but why can't individual programming be valued like, say, acting/singing etc.?