But not everyone is like that. Some developers want nothing more than a real, meaty technical challenge. Scaling up a site that's crashing every hour. Crunching huge datasets and extracting important data. If you find one, you might actually be lucky- they probably have more focus than I do.
I'm 20, I want to go to my simple 9 to 5 job, tackle a really difficult challenge, maybe debug some Magento because that's where the real challenge is at my company, then maybe for the last couple of hours I'll work on some of our in house products to enjoy the freedom of custom development.
Then I'll go home, make something to eat (at a reasonable hour) and hopefully spend a great night cuddling with my girlfriend while we watch old movies on my laptop.
While being a billionaire business man is very enticing, right now, at this point in my life, all I want is to be happy, and working 80 hour weeks to risk it on a 3% chance to make it something amazing just isn't worth it for it.
But don't get trapped working for a startup and kidding yourself that their success is your success. If it isn't your company you probably don't own a meaningful amount of stock- it's never worth busting your gut over.
I hear this line a lot on HN and frankly, I have to call bullshit on it.
A real startup (which I define as "a currently small business with large, untapped potential market") with a real business, (which I define as "make something you can sell to people for money"), is a great place to find work at with a real chance to make significant amount of money (which I define as, "I can take 1/2/3 years off to do whatever I like without worrying about paying the rent") in case of success. And the odds of that level of success are not bad if you're smart about choosing your company carefully.
How do I know ? Personal experience on multiple occasions.
(btw, note that my definition does not include "this website/mobile-app we hope will catch Marissa Meyer's eye for a quick $X0 Million flip.)
Given just this information, it's still possible that people who start companies in their twenties are more likely to be successful; but most people who start companies are 40+. I don't necessarily expect that to be the case, but do you happen to know offhand?
That is however very different from the type of startup that we usually talk about here, which does not an have an well established businesses model already.
The minute you have kids your discretionary free time drops massively (in many cases to zero for a while, especially if both parents work). Plus your view of your finances change - you have other little people depending on you so that steady income from that steady job looks really appealing.
If you're not someone who wants to set up on their own, that's great. Personally I have other priorities too (damn pesty kids...), but I'd say if you don't think you want to do it in your early / mid 20s when you have energy and time, you probably need to accept you actually don't want to do it at all.
But they showed faith in me when I really needed a job, they hired me on the day of the interview and even paid me early when I was about to be homeless (again.)
I love the culture at my company, I love table tennis at lunch and Bacon Fridays, I enjoy my work and the people I'm with. Regardless of where I want to be in 5 years, why would I give all that up for a minor chance at being rich?
It's a good question. Why would you? Maybe it's just because it's a vast challenge. There's plenty of time though, don't worry.
Sometimes, people grow apart from the environment they're in - for what I've seen and thought, that's probably when we're open for a larger challenge and with that, some new risk/opportunities.
I like your outlook, but man, even in PHP land there are vastly better frameworks that won't make you hate your life (Magento has a nasty track record for me and several other devs I worked with). ExpressionEngine, CodeIgniter, even Symfony... if you want to do PHP, do yourself a favor and do something that's not Magento.
That being said, I am a big fan of CodeIgniter, I love the simplicity of it's MVC system and I wish I did more work with it.
Just looking at job boards tells me those tech + drupal seems to be where all the work is (in the UK at least), so yeah, why the "even"?
I had the dubious honor of setting up a heavily customized Magento site barely after they released 1.0 - it was a nightmare. No docs, barely any participation in the forums, blog posts with outdated (already) information... I didn't have a say in picking Magento and eventually the client moved to something else as updates and expansion became too much of a hassle.
I personally have always been an entrepreneur at heart. It wasn't until a month ago (at the age of 33, married with one kid) that I decided to strike it out on my own. Ultimately, I knew I would regret not doing it. I have built up plenty of experience both technically and leadership wise. I've made a ton of mistakes in the past 11 years, but most importantly have lived with and learned from them.
You've got time, just keep learning.
That's a big reason why I left a cushy office job - working at the Twin Towers - to work as an engineer in a factory. Coding software for robots was more satisfying than whatever the hell I did at the consultancy I worked with.
They just don't all look for that "more" in their job.
MBA: But you, are a programmer.
Programmer: I'm also a person. Programming is just one thing I do."
I graduated in business administration, and when I tell people I can actually code and have been learning how to do it for the past few years, I mostly get blank stares, which is sometimes followed by the question: "why do you learn it if you ain't a programmer? You should hire a programmer instead."
They don't get it when I explain that the programmer I would need to do the work I want done wouldn't need me as much as I would need him. They also question me why didn't I graduate in something related to programming instead of BA, as if studying something outside of your area of expertise is waste.
"Why did you do this? It looks like you want to be a writer, not a programmer!"
I find it hard to imagine being so consumed with programming that you don't do anything else at all, even things that are related to, but not actually, programming. But even harder to imagine is why anyone would expect someone to be that consumed with only programming?
You would think that all companies would want someone who understood programming enough to be able to write about it in a way that others could understand, but perhaps not. Some places "get it" and some don't.
And a few hundred 1-star reviews on the app store(s), saying that while they use your app daily, it really isn't worth the $1.99 they paid for, and people should use X instead, which is FREE. Or 3-star reviews that say the app is PERFECT, they love it, but it needs feature X (assuring you that they'll bump up their reviews to 5 star when you add the said feature).
At times like that, I'm sure you'd rather you worked for some giant corporation and didn't have to deal with customers directly.
The app store model is broken because it has too much Internet in it. Anonymity + Platform = arsehat. Dealing with clients one-on-one is really rewarding.
But they'd just stare at me in horror.
Maybe try without the scarf?
Edit: As an aside, to find this I searched for "xkcd everyone thinking the same thing". It was the first result on Google and the second on Bing. I'm honestly kind of amazed by current search technology.
Perhaps the best way to describe the condescending startup hiring culture where aspirational devs are encouraged to give up their dreams to work for yet another VC funded rocket ship that is "changing the world."
Another recent article with this attitude:
My guess is developers are starting to see through this BS and realize that they very well can run their own companies.
This end of the tech cycle is terrible. We're due for an adjustment.
A tiny, tiny, minority that is well represented on this site. In reality most developers out there have no clue how to run or startup a business and they frankly shouldn't because they will fail.
> since the starting costs are relatively very low
I'd have to disagree. Unless you're weighing "cost" on just monetary value. A startup will cost you your free time, your health, your current career, and in some cases your relationship if you have one. Truly being successful in the startup world is extremely challenging and one that comes at many costs.
Maybe you'd be surprised how many programmers there are out there who don't care if anyone uses what they do, don't want to interact with users and aren't really bothered who it affects, and would rather be left alone with the purity of "here is a task, go, be a programmer".
I'm not like that now, but I used to be, and I know a lot of people that still are. All that messy stuff like business decisions, market research/development, customer support, requirements capture... all that is so much more soft and ill defined than me, my DE, a defined goal (that I may or may not have helped set) and a paycheck at the end of it. Then I don't have to think about anything but the code.
I think it's perfectly respectable for someone to care if anyone uses what they do and to want to interact with users and care if their problems are solved - but, at the same time, desiring to do this within an order of magnitude of 40 hours a week, receive benefits, not have to worry about paying the bills, even if the client can't be bothered to, don't have to deal with the nitty-gritty of sales and bookkeeping and boardmeetings and fundraising and the landlord and sourcing a new datacenter and dealing with the ISP and making sure the Jenkins box is keeping up with backups etc etc.
The career options for a developer (especially a good one) is a broad spectrum of opportunities, not just a black and white selection between the machine room of a bank or your own startup.
Edit: 1: Unless that's what you want to do.
It's really nice to have only(!) the technical challenges laid out in front of you and not have to deal with the business fluff.
> Maybe you'd be surprised how many programmers there are
> out there who don't care if anyone uses what they do,
> don't want to interact with users and aren't really
> bothered who it affects, and would rather be left alone
> with the purity of "here is a task, go,
> be a programmer".
Interestingly, I've noticed that along with the increased amount of "startup porn" on the interwebs, I'm encountering more and more programmers who think that they want to move out of their comfort zone and deal with all of that messy business stuff. I suspect that it's articles like this that are causing programming specialists to become insecure, as there's a subtle arrogance to them. From TFA:
> I'm also a person. Programming is just one thing I do.
You have to at LEAST have a good base knowledge of both programming, how to solve/codify problems and solutions, AND the domain knowledge of the problem you are trying to solve. Almost no programming is providing programming solutions for programming alone... the vast majority come from real world business needs.
Yes, there are some domains that are programming tools.. languages, platforms and frameworks... and many programmers focus on that, which is why there are plenty of options. However, that alone will not make you a great programmer.
I've spent most of my career doing contract work, because I absorb domain knowledge like a sponge, and enjoy it... I think my most productive time was in aerospace e-learning. It meant becoming a domain expert in e-learning, as well as the subject matter for the content of the e-learning. Now, I'm not a jet engine mechanic, and have no inclination to be, but being able to create a simulated interface for some of those systems was really enlightening, and I learned a lot about sheer engineering from that experience.
I've also had the chance to learn about systems security, and business processes in other positions... Not to mention providing a clear user interface and experience for interaction along the way. I love to learn, and have never enjoyed traditional education. Programming has given me the opportunity to learn in more depth about more subjects than a typical person does in several lifetimes.
If you aren't learning in this industry, and are only focused on programming, then you will be continuously behind... then again, there is plenty of work out there for mediocre code monkeys.
> You can NOT have a single domain of expertise as a
> programmer, and be a great programmer
edit: And you're defining great only one way: Someone with multi-domain expertise. Certainly someone who is expert at databases can be a great programmer too.
edit 2: great is measured relative to the problem at hand... If you have a deep technical problem, then multi-domain expertise doesn't really give you any edge. If you have a business problem that needs a technical solution, then having expertise in both the business side and technical side is an advantage.
You really think you're a domain expert because someone discussed their business requirments with you in order that you complete a job? Ah maybe you are, but's it's not the impression I feel you're giving off right now.
No offense though, it's probably just a cultural thing. I have a hard time calling myself an expert in anything, yet many with much less skill sell themselves quite a bit harder.
I never meant to imply that one had to be an expert in the problem domain, only that you had to learn the domain to deliver an exceptional product.
You can code a long way solely - because you spend no time on communication.
Sometimes their software is useless for anyone but themself. Sometimes it is useful and then it forms a whole fanatical community around it.
How to determine you've hit this piece of software: it has tons and tons of features and they all interact beautifully, provided your needs fit whatever task the Creator had in mind. Everything you can think of is already there and works.
Example: Far Manager (for windows; early versions, anyway).
Paradigm shifts tend to leave such projects on the sideway because the previous paradigm was pretty fine for the Creator so he sticks to it.
1.) Freelancers, who are committing to remaining so because of the lifestyle perks -- they want to be able to bugger off to that Australian walkabout more or less whenever they feel like it -- and the level of commitment which a startup requires just isn't appealing to them.
2.) 9-to-5ers, who want the safety and security of job with a large corporation or agency, and really don't mind dealing with the world through a dashboard.
I can understand where both types of people are coming from, and can't fault them for it. What I haven't found is an abundance of developers who have the appetite for the high-commitment, high-uncertainty life which a startup entails.
The guys who want to do it all are all busy doing it all. Notice the quote in the linked article: "I was actually thinking of starting my own business." That's what those guys are doing.
If you're looking for somebody who's motivated to run every aspect of a business, but would prefer to run every aspect of your business rather than one in which he'd get 100% of everything, then yes, you're going to have a tough time of it.
I'd recommend hiring one of those Australian Walkabout guys on their terms. They're probably just as capable of doing what you want done, and they don't come with any unrealistic expectations of what you'll give them. Pay them money in exchange for work until you either don't need them anymore or the money runs out. Then let them go with no hard feelings on either side.
The reason that I won't hire contractors to do that is that this is a highly specialised application -- not something that fits the mould of a typical web application -- and the developers will be instrumental in developing the core IP. It will take a few months for even the most skilled and experienced developer to get up to get fully up to speed with the internals details of this truly unique platform, and there will need to be many iterations of the platform as the product evolves. While it may be possible to do some of the peripheral work with freelancers (eg., the UI stuff, which will use fairly standard kit wherever possible), the unique core of the platform will only be maintainable if there is a stable team of developers to maintain it.
Imagine if Google had tried to design and implement Pagerank, the Google File System, and its custom server architecture using catch-as-catch-can freelancers. That would have been a catastrophe; you just can't develop truly unique systems that way. I'm in roughly the same boat.
However, if anything about what I've said has given the impression that I want people to "run every aspect of my business", then I am obviously not conveying my message clearly. I welcome suggestions for improvement!
I've had recurring stints with individual companies (with the aforemention bugger-off-to-Australia period in between when they didn't need me) spread out over the course of several years, and I've had multi-year contracts working 40 hour weeks building Big Things.
The important bit that you might be missing is that it's generally the project owner who determines the length of the engagement. A pro will stick around as long as you need him. Then he'll take off and enjoy those lifestyle perks. Find some of that guy and you won't have any trouble getting your PagerankFileSystem finished.
Based on my prior experience starting software companies (this will be my third), I know that the developers team will need to be working fulltime on this (well, evenings, weekends, and holidays excluded...), in the same room as the rest of the development team. And I estimate this shakedown period will last 2-3 years -- not freelance time, any way you cut it.
Again, this is really not meant to be a slight upon freelancers. They can be excellent at what they do. But I would never ask one to take a critical role in developing unique, cutting-edge IP in what I am certain will be a long-term evolutionary process.
Even then it is difficult, because you already have invested years in this, so obviously anyone you bring on will be a minority stakeholder. As a minority holder, they will have no real say-so in the business (you can always override them in a disagreement), they have liability they wouldn't have as a contractor / employee, and there probably will not be any profit to share for a long time. And even when there is profit, you get to decide what to do with it - not them. And you get the added burden of not screwing over your new minority holder, at least not too much.
Try putting yourself in their shoes: let's say a programmer has invested 3 years in writing a cool new program and has developed "cutting-edge IP". But they have no marketing or business experience. You do. What would you want from this guy to dedicate 3 years of your life to him and his company in a "critical role", and "take genuine ownership" for developing his business? (The quotes are not there to be snippy, but to use your own words to describe what you are looking for.)
To answer your question: what I'd want is a stake in the equity and governance of the company. These things aren't unusual when joining a new company, and in my prior two ventures (futurescaper.com, imatest.com), I've hired both CTOs and CEOs without difficulty, and successfully integrated them into the governance of the companies.
Somehow, this time around, my recruiting efforts seem to be generating a crazy number of misunderstandings. People assume that I'm looking for contractors (I'm not). People assume that I won't be paying competitive salaries (I will be). People assume that I won't be giving away equity (I will be). People assume that I won't be including officers of the company in its governance (I will be). And people make these assumptions even when my job descriptions explicitly say otherwise. I'm baffled by this, since I haven't encountered these presumptions with my prior startups.
I'm starting to wonder if developers in the web application space have perhaps been so badly burned by prior startup experiences that at this point they basically presume bad faith from any new venture they encounter. If so, that's really unfortunate, and I guess there's nothing I can do about it except either A.) hide the fact that I'm a startup (which would hardly be honest), or B.) Accept that that 90% of prospective candidates will weed themselves out simply by making bad assumptions, and realise that I probably didn't want those people anyway.
Also, I have to say that this experience is also starting to really warm me up to recruiters, who presumably are more skilled than I at dealing with the sort of industry dynamics that lead to these kind of misunderstandings.
I'm not surprised. You're trying to hire people with experience and significant skills - for which they're probably already being paid really well. Why would they quit their current projects and come work for you?
Honestly, a lot of start-ups just seem to want to hire incredible valuable people and offer almost nothing in return for that value. Everyone wants experience - most commonly because they don't know enough about the project themselves to design a test that will distinguish those who know what they're doing from those who don't (which is hardly inspiring to begin with.) Why would anyone want a high-commitment, high-risk lifestyle without the probability of commensurably high returns though? You talk about high equity but equity in a failed project's not worth diddly.
It's like... will you go work for this iffy guy in his shed for a couple of years on the basis of this product he's pinky-promised is awesome?
You need to offer people something they can't get elsewhere if you want to hire them. And all you're offering is the chance to interact with customers and the chance to 'shape' the product. Which is just... marketing jargon. You can't trust that to mean anything.
I suspect you'd be best off designing a test so that you can hire people with less experience, or just hiring one of the free lancers and accepting the uncertainty that they're going to stick around (trade on a risk for risk basis, essentially.)
Because I'd pay them just as well, and offer them much more exciting and meaningful work, with a potentially huge equity payoff if things go really well?
> Honestly, a lot of start-ups just seem to want to hire incredible valuable people and offer almost nothing in return for that value.
-- Argh, stop right there. I really need to figure out how to combat this conclusion that people jump to. People see "startup" and immediately assume "slave wages". I'm equipped to pay competitive salaries PLUS significant equity. Unfortunately, nobody seems to believe that a startup will really do that, even when I say so in black-and-white. How can I improve my messaging so that people don't jump to this false conclusion?
> It's like... will you go work for this iffy guy in his shed for a couple of years on the basis of this product he's pinky-promised is awesome?
This "iffy guy" is actually widely recognised as the world's top expert in this particular field, who's executed over $100M in projects in the past few years, and who is getting significant backing to set up a development team in a nice office in London's Silicon Roundabout. But when I say that "I have a startup and we're hiring full-time developers", people automatically assume that I'm some dodgy character who will pay you peanuts to work out of a shed.
Obviously I need to improve my message somewhat; possibly just dropping the word "startup", since this seems to cause people to jump to wildly false conclusions.
See my other replies on this thread for why freelancers are not an option for me.
Betting companies are pushing the market upwards. Every person who took another offer over mine went to a betting company. So I have a feeling that I am only pitching for people who are morally against betting.
So are you paying that kind of money? I have a feeling that you'd have to pay at least £10K over for my offer to compensate for the inherent uncertainty and as a premium the find that person quick.
Most developers have been burnt by startups at least once. I'd try not to remind the bad experiences before I have at least a chance to talk to them in person.
Anyhow, I think you've given some very good advice, and I'll take it. Will you be at tomorrows's HNLondon meetup? I'd love to pick your brain for more advice on how to build a team here -- if not there, then perhaps over coffee sometime. Email me at email@example.com if you're interested.
fwiw and from my perspective perhaps the problem is that you aren't advertising the salary you are offering - you want someone with significant experience - so we aren't talking about a recent graduate here, but someone with significant technical lead experience - experience most often comes with (at least a bit of) age and age comes with other responsibilities like family, kids, mortgage etc. Now they also have to believe in your product - so either they've already thought of it, or they need it sold to them.
maybe you need to go developer courting rather than waiting for them to drop through your door?
You're perhaps right that explicitly stating the salary might be a better way to go. I've been patterning my job listings after those of more established companies, which generally do not state their salaries upfront. But when people see that we're a new company, their immediate assumptions are so negative (and wrong) that perhaps we need to go the extra mile to overcome those...
Your job descriptions talk about what YOU want and the tech, and you claim that we are going to change the world. What about what your prospective team wants? That's who you need to appeal to.
For instance, look at Shopify's career page.
-Video of the team (Show don't tell, culture, work and play)
-Lists of the benefits (You're a human, that has a life, and we aren't going to abandon you when life events happen. We want you to stay healthy, have current gear, an vestation in the company and the ability to hone your skills and keep learning.)
-Pictures of a great environment and what it's like, testimonials from team members.
Salary HAS to be competitive, because no one in their right mind would say "Now hiring for 20% less than the industry median!" Get real. You need to talk to people about why it's worth it to come in and work their asses off for a super risky company.
as an early startup, I'd be interested in why you don't have a programmer/technical cofounder? That's normally how you'd get that ownership you want. I know I sure wouldn't own a project (YOUR project) on the level you describe without significant equity.
Cause otherwise its a gig that will probably be gone in a year.
Fair enough. I'll work on the language to emphasise that more.
> As an early startup, I'd be interested in why you don't have a programmer/technical cofounder?
Because I haven't found one yet -- that's why I'm looking. Most web startups are created by people already working within web-focused industries, so they have constant access and strong social ties to myriads of potential technical co-founders. A good idea starts getting tossed around between mates at the pub, and after a while they decide to give their day jobs a shove and go for it full-time. But I'm coming out of the world of transport planning: there simply aren't any potential technical co-founders within my professional or social circles.
So I've spent the last couple of months making inroads into the London software-development scene, trying to find a technical co-founder. Unfortunately, I've found that "I'm looking for a co-founder" translates, in virtually everyone's mind, as "I have no money nor am I ever likely to, and want you to work long hours for nothing more than sweat equity" -- an assumption which closed off every conversation before it had a chance to begin. So because I already had a committed investor on-board, I switched to saying I was hiring a lead developer instead. Unfortunately, this leads to the following:
> I know I sure wouldn't own a project (YOUR project) on the level you describe without significant equity.
Exactly! Which is why the job posting very clearly states that I'm offering significant equity AS WELL as a competitive salary. And I really mean it!
But this just isn't coming through. If I tell people "I'm looking for a technical co-founder, and can pay a competitive salary", then they say they're not interested, because they can't take a job that doesn't pay a good salary. But if I tell people that I'm hiring at competitive salary for what is essentially a co-founder position -- with all the equity and responsibility that this implies -- then they say that they're not interested, because they wouldn't want to work in a startup that doesn't give them significant equity.
Somehow, developers assume that equity and salary are such binary opposites that the majority of them are literally incapable of parsing a verbal or written offer of BOTH. This is proving to be more than a bit crazy-making -- but I keep telling myself that I wouldn't have wanted to hire such nincompoops in any case. Eventually I'll find a technical person who both has the skills that I need and is sharp enough to parse what I'm saying...
The developer community is (rightly) full of stories in which obnoxious and intellectually-lazy businesspeople just couldn't comprehend what was directly in front of their eyes. I've always gotten a good chuckle out of those stories, because I identify much more strongly as a geek than as an MBA. But now I'm learning that it's possible to tell such stories from both sides of the divide. This is a tough lesson to absorb!
I'm wondering if equity-only positions actually ever even get filled?
Good luck though, you're probably on the right track by not just hiring the first person in your lap (happened a lot at the last company. Bad move).
Maybe you're asking people the same sacrifice you're doing, except that they'll be doing it for you rather than for themselves?
But maybe -- hopefully -- I am wrong.
As I said in another reply, imagine if Google had tried to design and implement Pagerank, the Google File System, and its custom server architecture using catch-as-catch-can freelancers. I'm in roughly the same boat. Freelancers can be stupendously great for working on more or less standard types of technology -- but when it comes to defining and maintaining truly unique pieces of technology, they are not the way to go.
Don't think it has to be stock options that made the difference. They got more of that as freelancers too - they exchanged a rate cut for options early on and came out ahead of any employee there too.
These aren't rhetorical questions, by the way -- I'm genuinely curious and would eager to have a chat about this. My experience has very much been that it's only really possible to integrate freelancers into a development process and product that's either fairly conventional or fairly mature. But if you've got a different experience, then I'd be keen to hear about it and learn from it! Contact me at firstname.lastname@example.org if you feel like talking in more depth at some point.
Two of the freelancers worked out of their office (they were partners in their firm). The third lived in the same town. Both were 2000 miles from the corporate office.
The product was a collaboration tool. In a few months the first features were demo-able. After that the company 'ate its own dog food' i.e. used this tool to meet multiple times a day. Eventually we spend our entire day logged into this tool, available for instant communication, aware of what other communication is occurring in our 'area', sharing documents and status freely.
Plug: this tool is amazing, and enables freelancers and remote workers to behave as if in the same office. We often notice we get LESS done when we travel to other sites, because its harder to stay connected when travelling.
And that's quite a good plug for Sococo -- I'll definitely check it out. Thanks again for sharing your experience here!
And not every business needs to grow to a VC-backed behemoth. It's possible to manage a smaller business and keep it that way. OP also notes he's looking forward to the challenges associated with that path.
This is not universally true. Yes, we're all people, but some people don't want to serve as tech support, marketing, etc, themselves. Some people just want to show up and work in a specific, technical problem.
HN isn't filled with that type, I don't think, but they certainly do exist. And I'd guess they're the majority, too.
Sometimes for 6-12 months all I want to do is immerse myself in programming. Other times I want to "change the world."
Often, you can ask to do more things than programming at Big Corp X, if you show interest and are valued as an employee.
Not every Big Corp X. deals with social networks for alien life forms on earth : there are big corps X developing medical devices, airplanes and space vehicles, public infrastructure, or researching new, game changing technology.
A lot of people working at Big (or Medium/Small) Corp X. are passionate about their work.
I agree that by doing your own thing you have a much more direct impact on the result, but I don't think there is such a manichean and romantic division.
Please let this always be true. I don't want to get into software if it's just gonna be webapps, not that those aren't cool, but I don't know if I like it much.
Come on now, start a company when you've identified a problem that really needs a fix, and that has a huge potential of profit. A great way to find that problem is in a paid position. Starting a company for the sake of starting a company won't get you anywhere.
I also spent 8 months in a Director level position, managing several teams and several projects. Also much more constrained. Though, I did learn that there is far more mediocrity in the majority of programmers than greatness at that time.
Now, I'm much more about putting in my time, making the projects I work on better when I leave than when I start. I enjoy contract work as I get to learn new things constantly (domain knowledge in diverse cultures), which to me is a lot of fun. Right now, I'm working for an internal development operations group, which means creating services for other development groups... It's interesting for the moment, though I'm enjoying the slower pace so far.
I spent the last year and a half before where I am working on changing the environment of a set of very stale projects that had become maintenance nightmares, and bringing them into more current structures. Enhancing the UI as well as simplifying other systems. It really depends.
Me, I'm a specialist at heart - I have no interest at all in business. All I want in the world is for someone to come to me with an interesting problem to solve, and to help them solve it. Fortunately, I have that, and I get plenty of enjoyable interaction from helping less technically able (but more customer-focused) people to produce what they want to produce.
Classifying specialists as not-people is condescending and pathetic, every bit as much as it would be for someone like me to dismiss generalists as morons because of their lack of technical depth.
I prefer to have a 9-to-5 job that pays the bills and then, back home, study anything else.
Computing is still considered like magic, and it will stay like that for a long time.
I'm a programmer, but creating a product of their own is difficult and I commend those that do so. I've learned while doing my projects that aside from programming, I need to be...
An Investor...investing money into hardware, but MOST importantly, time. Time to code, to learn, and time from work and for family.
My Own Boss...doesn't mean I don't answer to anyone, it means I need to be harder on myself to get *ish done, because there is no team to offload work on.
Open-minded...even though working a 9-5 would allow me to specialize in a specific area and a lovely paycheck bi-weekly, my projects/businesses required that I learn so many new things that it's continually frustrating and irritating. Ex: filing articles of incorporation, learning photoshop (I was strictly a coder), micromanaging lists of tasks, formulate a way to pay the bills while donating time to my projects (emphasis on donating).
Side Note: Even though at times I may get jealous of my peers that I know that work at Google and the state...there's a fire inside me burning, just knowing that I will be something big, and I am my only true investor...programming IS just one of the things I do.
But I think the quicker you learn what's truly important to you, you start to spend more time on those projects/with those people/in that place/etc and you feel more fulfilled, and that you're making more of an impact, than you ever did before.
I will just continue reading and doing things by my own will until somebody finally realises that domain dependent thinking is rarely innovative and that they might be able to get a competitive advantage from utilising the broad-range of expertise I am trying to grow.
Everybody is different; some of us require variety to focus; and some of us get-off on bridging gaps in between disparate domains.
Edit: Sibling comments are talking a lot about the author's personal motivating factors but are ignoring the bigger message of poor hiring tactics like repeating talking points and marginalizing personal goals. I got you, though, op.
"Come work for a company we won't mention here.
You will need all of these skills:
Correlation == ...causation?
Anyway, agree with the sentiments personally, but not sure that's true of those who identify strongly with the moniker "programmer".