A word to the wise regarding your employment benefits, you say:
"Shiny Apple Products
Seriously, get whatever you want (PC users may have to justify themselves)."
That will simply turn off some people and there is no reason for a self-interested business to do that. Apple computers actually are PCs, and always were but especially now they are PCs, so you should make a distinction regarding Linux. The top machine learning company in the world even has their own distribution of Linux[1](or flavour of Ubuntu, however you want to put it). They and many others who don't make such snarky remarks almost certainly pay more than you and are working on more interesting problems than you, you are just narrowing down your potential employees without any reason. So, even though it's in jest, remove that statement from your hiring page if you are serious.
+1 to counteract the downvotes. This turns me off too. I know they're a Rails shop, and that's super popular with hardcore Apple fans, but Ruby code doesn't seem to mind when I write it on my Windows laptop. When I chose my machine, it outspec'd the MBP in every way (from screen to SSD/RAM to build quality) for less money -- not a valuable mindset at an early startup? The host OS doesn't matter all that much when you spend half your time SSH'd into Linux servers anyway.
This is what irks me, too. The startup I was working at (somewhere in Europe) was always short on money (there wasn't any VC funding), and I get it that this meant having to cut corners anywhere. But then the owner started to outfit every new employee with the latest mac book and a cinema display - for roughly 9000$. I had a (good) Thinkpad and a standard 24" monitor for a third of that price. Why they decided to throw out that much money on Apple while I couldn't order a spare keyboard I don't know.
Welcome to Europe. Taxes, customs, shipping + crazy markup, and this is what you get:
http://www.epli.is/tolvur/fartolvur/macbook-pro-15-retina-2-... - high specced rMBP is ~$4500. Add a monitor and and iphone and you're already there, at least pretty close.
> outspec'd the MBP in every way ... for less money
You're falling into the consumer trap of thinking of the value of an item as its initial, un-depreciated cost. Apple products are almost liquid assets--you can sell them for large fractions of their original purchase price for years after you buy them. Whereas most PCs, like cars, plummet in value the moment you take them off the "lot." Which do you think a startup would rather put on its balance sheet?
Also, because Apple products don't tend to depreciate very quickly in the market, Apple is willing to re-attain their own products after lending them to you for a while: they maintain a very competitive leasing program for businesses (http://www.apple.com/financing/business.html), which you can get into as soon as you want to lease $5000 worth of hardware (i.e. as soon as you're at least a two-person shop.) This is basically the Heroku/AWS of computer hardware: you need fifty laptops for a year? Pay as you go. Want to upgrade? Return them and get new ones, no charge. Business fail? Send everything back, you're good. Business succeed? You can buy the stuff out.
I would bet [fairly large amounts of money] that the majority of startup in SV/SF who keep Apple hardware are on that leasing plan. As soon as you mention anything about "starting a business" around an Apple Store employee, they throw someone in a black shirt at you to explain it.
his point is that a startup should be resourceful period. a startup doesn't have to think of liquidating their assets unless they are going out of business. I use a 10yrs old ibm thinkpad. I've been hacking Unix systems 1994 and started writing C/x86 asm back then. I get odd looks when I go to meetups and pull out my old clunky hardware. I bought it for $100 3 years ago, it works great for me. No matter how fast/sexy my machine is, it doesn't write the code. I do! I've always stayed with older machines due to an experience I had around 97. I had an IRC friend in Poland, he had a 8086 machine. I had a 486 or possibly early pentium. He wrote a routine that was way faster than mine because his only experience was through his 8086, so he had to make it fast enough for himself. I realize that having top of the line hardware puts me at a disadvantage, I can't assume that most of my customers are going to use the latest. I work as if they are going to use the slowest. Th e only time to code with the latest/shiny is multimedia intense projects like game development. Web development? You can use a 15yr old computer.
> The only time to code with the latest/shiny is multimedia intense projects like game development.
Your anecdote was exactly the refutation of this statement. :) Game developers are often encouraged to work on median-spec systems because games are expected to run on a variety of configurations. You don't want to develop The Sims on a quad-core Xeon with multiple GT680s, only to find that it doesn't run on your mom's 2005 Core 2 Duo with integrated graphics. The people working with the asset pipeline/level editor might want some extra horsepower (end-users aren't expected to be able to run the level-editor, so it's usually not very optimized) but the programmers don't frequently need it.
Also, though, I disagree with this:
> a startup doesn't have to think of liquidating their assets unless they are going out of business
The most important thing to keep in mind, as any sort of business owner, is your BATNA (http://en.wikipedia.org/wiki/Best_alternative_to_a_negotiate...). It drives all your major decisions--should we raise funding, should we get acquired, should we IPO, should we declare bankruptcy, etc. And the "baseline" BATNA is always "how much money would we have as runway if we just liquidated everything, fired everyone, and started over?" It shouldn't be a consideration, but it should always be a benchmark to observe your distance from. More liquid assets means more negotiating room, basically.
But really, my point wasn't about liquidating assets, it was mostly about cashflow. A startup, like any business, both earns and spends money. Leasing means you have more cashflow. It's the same reason you don't buy physical servers right away--you don't want to lock that money up if you don't know if you'll need it.
It was, essentially, an MBP clone, with an objectively better display panel, lower price tag at the same configurations, and Windows 7 instead of OS X. 3 years later it's still in perfect condition it was built so solidly. Unfortunately HP ruined the brand name by applying it to cheaper, inferior laptops in the years since, so you can't compare it to an "Envy" today.
@bluedino: It was just as sleek, with the same pixel density as the best screen you could custom order for an MBP, but better brightness & contrast. Here's what it looked like next to an MBP of that time: http://cache.gawkerassets.com/assets/images/4/2011/11/d929dd...
I wonder why this brand ruination happened: did some manager at HP have a P&L compensation setup so that by cheapening the product he got a bigger bonus for a year or two?
Totally agree. Even though I'm a mac user, PC-hostile attitude is a total red flag for me. My experience has been that more Mac-heavy shops tend to be somewhat weaker on the *nix side, primarily because they overlook people with strong Linux chops. If they genuinely know their stuff, PC/Linux people can help you get more mileage out of your infrastructure... which sounds like something 42floors needs at the moment.
There was a story of a failed startup on HN a month or so ago that had a co-founder who stated (jokingly) that they'd no-hire engineers who used Linux as their primary OS. They ultimately folded in part because of technical issues with their infrastructure.
In that respect, it wouldn't surprise me if there's a real correlation between crummy sysops and PC-hostileness in startups.
> There was a story of a failed startup on HN a month or so ago that had a co-founder who stated (jokingly) that they'd no-hire engineers who used Linux as their primary OS
This blows my mind. I'd think that would be a prime quality, since you're almost certainly going to be deploying on Linux platforms. Intimate knowledge of your production platform is invaluable.
100% agree, developer here who sees snarky recruiting posts like this and immediately says no thanks. Makes it clear the company is gimmicky and not focused on the true challenges of software development: clarity, focus and rational decision-making
Yes the only problem is the snark. I prefer Linux; still if a job wanted me to use OSX I'd be totally fine with it. But a remark like this just puts me off.
Yeah, there are many legitimate reasons to prefer Mac to Linux or Windows, not the least of which is that Ruby gems just work better on a Mac because they are developed there (regardless of whether you will have to figure out those problems when you deploy to your Linux-based production environment in AWS :P). The issue isn't whether you use Mac or PC but in the holier-than-thou attitude about it. You are recruiting a team of (potentially) one-trick ponies who are religious about making judgement calls.
Probably a looooooooong stretch from just saying "Justify a PC" to you are building a uncompromising team but I would just say "The Best Equipment (We mostly use Apple)" would accomplish the same goal with less annoying language
Agreed. When you say "all the shiny Apple products you want", you actually mean "the fixed cost of your equipment is irrelevant compared to the value you create in the long run." Say so in plain terms. The most attractive type of equipment benefit I've ever seen on a job posting said the following:
"Pick whatever will make you most productive: we'll order it overnight."
Even if there are one-time integration costs involved in adding a PC user to the team, that candidate may still be more productive in Ubuntu. Trust their judgement.
To be fair to the ad, I think they mean it in a funny way when they say "PC users may have to justify themselves" but even then, it comes off as the usual crap of "if you are a PC/windows user, you are not hipsters like us who are on mac".So the intention might be good but I agree that it probably is not the right place for it. I personally use a dell laptop for dev work at home where I have partitioned windows 7 and Ubuntu and switch to either as necessary.
Somewhat tangential: Are there many start-ups that allow talented tech people to build their own PC? I used to think most programmers knew hardware, but that apparently isn't or was never the case. Building PCs is second nature to me, and I could build a PC two times more performant than a Mac and probably half as expensive.
Can you bring that PC into an ad-hoc meeting with a few of your co-workers? I'm not talking a Meeting(TM), just sitting together to figure some stuff out, maybe put some things up on the beamer, present your work, share your knowledge?
This is why I don't want people building their own PC, even though generally they can pick any tool they like: it shows they have the wrong priorities (at least for our team). Unless your job involves something really resource intensive, a high-end laptop (combined with external screens, keyboard and such) is more than good enough and much more practical.
Don't get me wrong, I love building my own machine, I build my own home server from scratch just for the hell of it every few years.
But simply the fact that you call it "half as expensive" suggests you have no realistic idea of actual costs. The time you spend searching the parts together is already more expensive than a MacBook.
That will simply turn off some people and there is no reason for a self-interested business to do that.
Actually, judging by your comment and the ensuing replies, it looks like listing the benefit this way is doing a great job attracting the people they want and filtering out those who wouldn't fit in there.
Any business where people who use a different windowing system to get to their editor and shell "don't fit in" is not a business many high level hackers would be interested in at all.
Even PG's Lisp versus Blub argument is tenuous. Languages and OSes are a dime a dozen. What matters are algorithms and real world results. If you don't see that that's fine, but some real machine learning company thinking at the level of algorithms and not tools will eventually come along and eat your (company provided) lunch.
... is not a business many high level hackers would be interested in at all.
If you don't see that that's fine ....
You sound very defensive about this, which leads to the flip side of your argument: any prospect who can't take the lightest of jabs at their pet platform is not a person many "high level" startups would be interested in at all.
The 81 upvotes (of 191 for the story as a whole) on my original post and the replies here with people overtly stating they'd like to work for the company but were immediately turned off by that phrase I think prove my point. If we consider the jobs page as a kind of landing page and were A/B testing different different phrases it's clear this one would not survive.
I understand you are making an app on iOS though and it would be perfectly legitimate for you to have constraints on employee setups because of that. But for a company working on a RoR project where the window manager doesn't matter, who seem to be having trouble recruiting, I'd suggest the data here clearly indicates they should drop the phrase as there is no way (looking at those numbers) it is helping them filter out some trouble making characters with a bad attitude towards Apple, it's turning a huge number of people off. And as I said elsewhere, there are companies certainly paying more and certainly working on more interesting problems who don't do this.
C'mon, you're beating up a strawman. All they said is that you may have to justify the decision. I wouldn't want to work there if the tools were forced on me without any say but that doesn't seem to be the case.
It makes sense to standardize and to have a reason if you want to deviate (said from the perspective of someone that would want to deviate). However, I'd still reword it if I were them, based on this reaction.
I kid you not...that line literally prevented me from thinking about submitting my resume...despite the fact that I'm completely sold on their business model.
This is slightly less stupid/mean than it seems. Supporting only one set of systems (only mac, on latest OS), is much less complex and makes surviving hardware failures easier. At this stage, they probably don't have a guy managing hardware and helping when things break, so it really helps to reduce the number of moving parts, or (in this case) the diversity of moving parts.
I can only speak for my company, but the advantages of equipment diversity outweigh the costs. We've already written "new developer" documentation for both Mac and Ubuntu, which we'd have to do anyway at a certain size. If the site looks bad on any type of monitor, we're able to spot the issue immediately. We can do native testing of IE without depending on VMs. And - last but certainly not least - we're all comfortable with our tools, regardless of previous experience.
Seconded. I know we're getting a bit off topic here, but I'm growing really tired of all the startups who think making fun of people who prefer a different OS/computer than the founders is a good recruiting strategy.
Think about it. If you're a Mac user, would you work for a startup that says " This is a pure .NET shop and proud of it! You won't find any of those Apple hipsters here!"? If not, why do you assume the opposite is somehow very attractive?
Sure, the example feels a bit over the top, but if you really can't think of an example, then I dare calling you a little short sighted.
It's like saying a Windows user wouldn't want to work at a Node.js shop. What does the dev tech have to do with the OS? And yes, it's a fair comparison, especially since Xamarin.
We're constantly told not all mac users are zealots. If you're a developer who has decided OSX is the best option but isn't religious about it you would probably be willing to work in .net if the rest of that company was good enough.
"I just got an email from an engineering prospect who has decided to turn down our offer. We put so much time and effort and passion into recruiting him. He decided he wants to go off and start his own company right now."
I think more and more startup CEOs are figuring this out. At least, I'm telling every one I meet - for technical talent, you are not competing against the other startups in your neighborhood. Or even ones doing the same thing. Or startups in general. You're competing against the awesome developer doing their own thing.
The cost of booting a startup is trending to zero. 10 years ago you'd need massive capital investment (servers, networking, etc.). I can spin up a Heroku server for free (or a series of AWS for nearly-free). I have super-powerful development environments (Ruby/Rails, Clojure/Lighttable, whatever) that are free or nearly so. Great infrastructure (Postgres, Unicorn, whatever) - free!
All I need is a product idea and a vision and I can bootstrap my company. I can charge money on day one without needing a business checking account, LLC, and all that.
What does this mean for you? As a startup founder, you are competing against a person owning 100% and running the show as they see fit. This is a completely different power dynamic and one that is going to be the new normal. You really need to have your stuff completely together in order to get the best people. It's very hard, but possible (I advise founders how to do that all the time).
I'd also caution against "this person needs to be passionate about my idea or we won't" hire them. I see that all the time, too. Look, it's your baby; it's going to be very difficult to get them to love it as much as you do. Figure out what this person wants out of life (their career, whatever) that you can provide that they alone cannot (work from home, presenting/attending conferences, learning new technologies, mentoring, leading a team, education, building their personal brand, whatever). THAT'S how you get them. Constant tending to their needs and giving them opportunities to further their growth is how you KEEP them.
What value are YOU bringing to the table other than an idea and some cash? Those are table stakes now.
"The cost of booting a startup is trending to zero."
This is true and it's great.
Meanwhile, turning your just-booted startup into an actual growing business with payroll, HR, investors, customer support, etc is just as hard as it ever was.
With our recruiting we too have people who pass in order to do their own thing. I wish them the best of luck, but wonder if they really know what they're in for sometimes.
Out of every startup advertising jobs right now, I think 500friends gets this better than anyone else: They simply acknowledge that their best hires are likely to want to start something of their own, and actually offer to fund it: http://venturebeat.com/2012/08/10/founders-beware-500friends...
I think that's exactly the right attitude to take. You're really just doing an 'apprenticeship' at one of these early-stage startups, make connections, get some practical experience, then go do what you really want to do.
This is the worst part IMO, in theory it's great that everyone can have the freedom to do what they want, but the reality is most people don't have the skills, the right idea, etc... to make a successful startup and would have been better off working for someone else.
Is this a unique problem to our industry? In a housing boom do construction people start making their own construction companies instead of working for others?
What I witnessed during a regional housing boom where I live is exactly that: employees starting their own companies. So instead of paying a construction worker $25 an hour, you're suddenly paying his company $80 an hour for the same work. And you have little choice but to do so because part and parcel with the housing boom was a skilled labour shortage! And once the employee becomes a company, the companies hiring them were suddenly more limited in what they could demand and the workers were more inclined to set their own hours and do the work as they preferred because, as they saw it, they were now business owners who could do their own thing instead of an employee beholden to someone else's preferences on hours and work style.
From what I saw, some individuals regretted that decision because as it turns out, despite some added flexibility, they just wanted to work as a plumber or an electrician. They didn't want to have the added responsibility of being a business owner.
>but the reality is most people don't have the skills, the right idea, etc... to make a successful startup and would have been better off working for someone else.
You never know that until hindsight, and the opportunity cost for finding out for yourself, whether a new college grad or an established (financially cushioned) engineer, is historically low.
Totally agree with the latter part -- nobody's baby is as fascinating to other people as it is to its parents -- but the argument against "doing a startup" is actually a pretty easy one, and any founder should be able to counter this kind of waffling applicant with a large number of realistic and effective arguments:
* First off, doing a startup is not just about sitting in a dark room and writing code without a boss. It isn't even mostly about that. Your average engineer has no idea how much non-technical crap there is to do, and consequently has no idea that the things they like to do don't strongly overlap with the set of things they think they'll be doing as a startup founder. It isn't just pizza and coding sprints -- it's about talking to customers and coordinating with other people and marketing and finding photos and making spreadsheets and raising money and bookkeeping and filing idiotic paperwork with bureaucracies and diffusing personality conflicts and a million other things that good developers never think about and don't ever want to do. And if you succeed, your reward is more of that stuff and less coding.
* Second is that you'll work like crazy and have to bear a lot of stress. That's the way it goes. Most people aren't cut out for that lifestyle. Doe-eyed college graduates, especially, haven't ever done a project that lasts more than a semester or two. They have no idea what they're getting into.
* Third, if you don't have a co-founder, and you don't have any experience, you're doomed. Go work for someone else for a while. I know, I know...$FAMOUS_PERSON did it. They're the exception, not the rule. If you're in that situation, there's a litmus test: is your product currently built and exploding in popularity? Then you may be the next Zuckerberg. Otherwise, go work for someone else for a while.
* Fourth, these days, most people confuse "doing a startup" with "making a cool feature". They're not even close to the same thing. I can't tell you the number of resumes I've seen from developers who made a half-baked marketplace website that they called a "startup", then gave up when the users didn't come and they realized that 99.999% of the work was ahead of them. Building the product is the first step, not the last one.
* Fifth, just because it's cheap to rent server space and open-source means that you don't have to write CGI by hand doesn't mean the competitive landscape is easier. In fact, it's harder. For any idea you come up with, there are either 50 sophisticated, me-too competitors, or there will be within 10 minutes of you getting any publicity. The flip side of everything being cheap is that any bozo with a credit card can do it.
...I could go on and on with this. Point is, most developers have this hazy, romantic, idyllic notion of "doing a startup" that bears no resemblance to the actual thing. Communicate this honestly and clearly to someone when they're waffling between taking a job and going off on their own, and you've got chances. After all, anyone who's really ready to do a startup isn't going to be talking to you about a job. They're going to be doing a startup.
Most developers don't aspire to run a crazy dominate-the-market-or-implode VC-funded start-up. They just want to run a little life style business that will pay them well and allow them to work on what they want. This is what you are competing against, not their "romantic notion of doing a start-up".
And it is not that difficult for decent developers to create such a life-style business. Certainly, no where near as hard as you suggest creating a start-up is.
Such lifestyle businesses might include a SaaS, a few iOS Apps or a consulting business. I have such as business myself. And I know personally other developers who have done the same.
Lifestyle businesses don't have to be hard. They don't even necessarily require you to speak much to customers (if your products are games in the app store, for example). And you really don't have to work that hard, if you don't want to.
You only have to work hard if you create a business that makes you work hard (ie bet on winning big with dollops of VC cash). Try creating a business that doesn't require you to work hard, and you may - surpise, surprise - find you don't actually have to work that hard.
"Most developers don't aspire to run a crazy dominate-the-market-or-implode VC-funded start-up. They just want to run a little life style business that will pay them well and allow them to work on what they want. This is what you are competing against"
Actually, that's probably the most naive of the romantic notions of doing a startup. First of all, the things I described apply to businesses, not only VC-backed startups. Just because your company is small doesn't mean you're suddenly immune from talking to customers and dealing with bureaucracy. If anything, you spend more time talking to your customers when the base is small, because everything is so much more precarious.
Second, the number of "lifestyle businesses" that exist as single-founder-tech-guy-and-a-computer are so vanishingly small as to be unicorns. The people who claim to do that are either secretly making most of their money doing consultancy (which is fine, but it ain't a 4-hour work week), or they're in such a bizarre niche that they've built a knowledge and/or distribution moat around their business that is virtually impenetrable, through years of backbreaking work. Your example of "app store" developers is particularly on-point: it's notoriously rare and difficult to find a product that has a sustainable business model in that marketplace.
Law of the universe: if you want something, there are millions of other people out there who want it just as much as you do. Any business opportunity that is simple enough to be achievable by a relatively unskilled single-founder-with-a-computer, yet lucrative enough to support that founder indefinitely with a four-hour work-week, will invariably attract competition from the undifferentiated masses who don't want to work, either. So you're either competing with those people (hard) for a small pie, or you're trying to build a growth business in a large market (hard), or you're failing (hard), or you're getting a good job (hard). There's no free lunch.
This is why I get annoyed with the current trend against doing technically hard things as startups. The up-front risk of your thing not working is much higher, but if it does (and there's a market) then you're in a much more defensible position. You're basically front-loading risk. And since the thing you're risking is time, front-loading is something you should do if you can.
There is the problem of telling whether there's a market for a given thing before you invest six months or a year building it, so I'm not advocating sinking a whole year without shipping, but there's definitely merit to starting with something that can't be built as a rails app.
I think you are wrong here. How do you know that single-founder-tech-guy-and-computer businesses are so vanishingly rare?
Small businesses, at least in the UK, do not involve that much bureaucracy. You hire an accountant to deal with that.
And, seriously, you don't need to put back-breaking effort in for years to create a (non-consulting) lifestyle business. I used to work with a developer who coded a niche social network on the train to work each morning. The site now makes him far more than he ever did working as an employee.
There are plenty of other niches where developers can make good money. Competition does not work like you think - it is nowhere near as intense as you seem to think and, regardless, there is room for more than one player even in a niche market, if all you are aiming for is a lifestyle business.
Sure, there is no free lunch, but it ain't anywhere near as hard as you are trying to make out. Other readers, don't let this guy put you off setting up on your own.
The "person" described here in the parent to your first reply:
"Or startups in general. You're competing against the awesome developer doing their own thing."
With regards to that even "awesome" people make foolish choices all the time. It's up to the person trying to recruit the described person to give them, in plain terms, what's involved in doing it all yourself. My guess is that they don't do a particularly good job at this. Nor does the entire startup community either other than to make generalizations about difficulty and how most ideas don't work. But we're talking about the same community that thinks it actually makes sense to pass on Harvard acceptance and do YC.
> Point is, most developers have this hazy, romantic, idyllic notion of "doing a startup" that bears no resemblance to the actual thing.
I think that notion is actually, more often than not, "doing a lifestyle business." People tend to get confused--I think because they're both talked about so often on HN--and connect the excitement of the startup scene, with the four-hour work-weeks of "hands-off" B2SMB businesses like Patrick McKenzie espouses.
I think, if people took a hard, rational look at their own desires, they might realize they are okay with less excitement and more four-hour work-weeks. You can do hackathons and contribute to OSS in your spare time if you still feel an urge to be speep-deprived ;)
I don't disagree at all. Like most sales and marketing - customer perception trumps reality.
I remember reading a case study about two different brands of water filters. One was, on paper, clearly superior (removed things that demonstrably cause illness) but removed a mineral that made water "taste good". The other, inferior filter brand, left that mineral in the water and thus beat taste-tests hands-down.
The study was about the immense marketing challenges that the superior brand had in turning around the perception (as I recall, they had to tweak the filter to enable pass-thru of that mineral, then run taste-test switch ads).
Anyway, the point is the same - yes, it's really really hard to actually get a company off of the ground. But none of that matters if your candidate hasn't tried it once or twice: you've gotta find ways to neutralize that argument.
I like the one where "If you want to leave here after a few years we'll give you xx-thousands of dollars" - because the great work environment, combined with now an inside view of just how hard a startup is - they probably don't get very many folks taking them up on that offer.
>The cost of booting a startup is trending to zero. 10 years ago you'd need massive capital investment (servers, networking, etc.). I can spin up a Heroku server for free (or a series of AWS for nearly-free). I have super-powerful development environments (Ruby/Rails, Clojure/Lighttable, whatever) that are free or nearly so. Great infrastructure (Postgres, Unicorn, whatever) - free!
>All I need is a product idea and a vision and I can bootstrap my company. I can charge money on day one without needing a business checking account, LLC, and all that.
I wonder, when you have enunciated it this clearly, whether you are able to at the same time entertain the thought that an idea is worthless? (or worth far less than 50% of the business)?
you have just drawn an extremely vibrant photorealistic picture of a developer with everything at his or her disposal, who can bootstrap anything, from nothing.
he or she is just sitting there. "All" he or she needs is a product idea and a vision.
would you say that he or she wins by sitting there doing nothing as opposed to buying into someone else's dream who gives up 50% of it so this person can 'easily' execute on it?
or would you still say that this is a market that shouldn't 'clear', and that the one owning the product vision should try to cobble together PHP, because his equity is worthless, and the one owning the engineering skillset should think what he's missing doesn't have any market value?
> You're competing against the awesome developer doing their own thing.
Every developer can come of with delusional visions, ridiculous sales projections or greedy scamming schemes, but not every business person can develop software.
> All I need is a product idea and a vision and I can bootstrap my company.
I think you're omitting a key thing here. You can't do anything without time. Time comes at a cost. If you're building this startup as your day job then that cost is directly monetary, as you will either be living off savings or be supported by someone else. If you're bootstrapping in your part time then your cost is your free time and family time.
Tell me, givig your insight, how many successful businesses have you done? Im not being pedantic, but such statements must come from someone who has built at least 2 businsses following such system.
I don't know if you guys allow remote workers (Seattle guy here), but that would be a good start to getting more workers. However, I think you guys are in the stage where a lot of people call it quits, say its hard and just give up. They don't have enough people (does anyone really?), they can't get things done, and the things that they want to get done are out of reach. The key to get through this is work harder (not longer), and just grind it out. Literally, make every wednesday code a thons. No meetings, no chats, just code. Get things done. Heads down time. This will get you through it, and I wish you the best! 42floors is on a mission, and don't you forget it.
Hate to say it but they are onto the boring stuff. The cleanup after the Superbowl, if you will. People just aren't that interested in coming in and fixing code to run better. It's a really tough sell because it's tedious, un-sexy work.
Everyone's got their own thing that they like and hate though.
I personally love trying to optimize and speed things up. On the flip side, I really hate doing CSS and Javascript front-end things (I can do them, but just prefer not to). Speed/optimization stuff (which I'm still getting better at every day) just feels more quantifiable and is a more interesting problem.
If the writer can open themselves to remote people, they've definitely got a better chance at pulling in some good people to help. But the one caution is against someone who wants to some in and do a rewrite of 90% of the stuff- optimize, don't start over.
I like to gently tear apart the tangled spaghetti code and figure out what data store goes with what process.
One thing I absolutely refuse to do is compromise on tools.
Telling the factory-trained Mercedes-Benz mechanic at the dealer where you bought your $120K SL550 that you want him to use only a hammer and a screwdriver to service the brakes on your car will get you laughed out of the dealership.
Really? That has to be the most "sexy" job out of all of them. Anyone, and I do mean that, can build an app that runs off of 1-4 boxes and a single DB instance. Not many people can build a system that scales to 100+ boxes and a DB that spans several boxes (not counting slaves.)
By that time, you're having to solve the "hard" problems. That's where a back-end guy shines.
Please don't confuse what I'm saying. I don't know what type of developers that they are chasing but what happens after the startup phase and into the profitability/scaling phase is code cleanup. I've done enough of it to know that it's not that fun (or sexy, in my book) to see what shortcuts were made to get something working right now. Untangling that and getting it to work on a grand scheme doesn't sell all that well to the type-A 'let's hack this out!' startup mentality.
This is where you need the pragmatic developers who you probably wouldn't have hired at the start. They are (relatively) slow and tedious, but the job will be done right. This tends to be a natural flow of from start-up to mature company.
That's probably the issue, it's a j-o-b not the adventure they're describing - big problems, software that matters, best work of your life... really it's the 7 billionth CRUD website and the people looking for that job will probably never include "heroes" in their search on monster.com.
Echoing some other commentators, I'm a backend guy and this can be fun work. Yeah, you're inheriting technical debt (that phrase sounds so much better than "a mess" :-), and you've got to not only figure out B but how you'll get from A to B---and people issues can make the job impossible---but there's a set of us who really love these challenges and then the pleasure of looking at a new system that's handling the load without problems.
I don't know, working on a slow ass Rails stack might suck, but could be fun to rewrite it in something new and cool and hip and that scales way better like NodeJS.
I tend to find that these are long-term projects that could take 4 to 5 years to get done. You need a different type of person - and definitely the support of management - to make this a reality.
The weak point is there tends to be little interest from management. 'Why do we need to invest in fixing that? It's working already! We need feature [1, 2, 3] first.'
This was my first thought as well. I live in Kansas City and would be happy to work for a "sexy" startup like 42 Floors. Apparently it's not an option, though.
I filled out their 'application' form letting them know they were missing out on me since they don't accept remote workers. Nothing but an automated dismissal message.
Yes, this is exactly what you should feel like if you compete for a limited pool of hipster developers in San Francisco.
I know three different guys who can come in and clean up someone else's shit, but they aren't in San Francisco, and they all currently have jobs, so none of them would come cheap. But if you offer a ton of money to someone with 10 years of experience architecting and deploying web apps with 1M+ users, they will do the boring work of fixing your scalability problems.
Yup that's normal. The key to get through is priority. What is the most important single thing for each person to be doing? Do that. Repeat. Focus.
If its any comfort this isn't even unique to startups. Every software project I've ever done has felt like this. The list of possible tasks to do always far outpaces the resources on hand to do them.
> What is the most important single thing for each person to be doing?
I figured out the focus and priority part, but that angle, each person, is still an eyeopener.
It's something I've been struggling with, I know what the priorities for the product are, but not everyone can contribute (equally) to those priorities, and I don't want to make them feel like their work is less important.
I think looking at it from this angle will help a lot.
And don't forget the other side - the knowledge of what NOT to work on. Otherwise your todo list will be a mile long. Focus is about knowing what not to work on. Identify your core constraint and then work it until something else becomes the constraint.
Just don't forget that you're dealing with problems caused by growth and demand. You're basically being crushed by latent, pent up demand. I feel your pain. But I have to say, having problems for those reasons can't be all bad.
And, if high quality photos are your issue, talk to Pete Warden over at Jetpac. He's wicked smart, friendly, in SF, and deals with high quality travel photos on Jetpac.
Or (And?), talk to AirBnB. They deal with photos, are in SF, and are also YC alums. Don't you all have each other on speed dial?
As a founder, I wish I had your problems. But, I have to say, I also wish I had your level of access to potential solutions and advisors.
My YC interview is on Sunday. Hopefully by Monday we'll have each other on speed dial. :)
Thanks again Jason. Your advice and insights were very helpful.
I feel obligated to pass on what I learned:
1) Don't forget what it's like to not have your background in your industry.
2) Be very good at explaining what you do. Succinctly. Clearly. And be able to give that explanation without assuming prior industry knowledge (see point 1).
3) If it takes a long time to explain who your customer is, you're doing it wrong.
4) Don't forget that YC partners are also looking for your potential on demo day.
With great success comes great expectations. I think a lot of us feel like this. Once we get one thing, there's a million other things to accomplish. There's a great book called Bounce that describes the low people go through once they accomplish something. It's a tangent to this.
I've loved working with remote folks. You can hire the best, it's cheaper, there's people that love working remotely and are even more focused and productive because they can work without the typical office distractions.
Experiment with some Location: Anywhere job posts?
It is simple supply and demand, you either need a bigger market for the labor you are seeking or you need to offer more money to "purchase" the employment you desire.
This is kind of an insane problem to have, with a clear solution. I'm not sure what it is about startups that makes them think that basic economics don't apply to them?
One of the things I think about on long runs while training for a marathon is precisely how not fun running often is while training. Running through pain, heat, cold, rain exhaustion, etc. is not fun and certainly not easy, but it's precisely those difficulties that makes crossing the finish line such a triumphant moment. All those moments of struggle are like little deposits towards an immense payoff; the sum of everything you've endured.
There's something satisfying about doing things the hard way. If this stuff were easy or fun all the time, it would get boring.
The difficult part is maintaining that drive to do things the hard way. When hard things get harder, and then impossible, its hard not to start to feel depleted. Zen and the Art of Motorcycle Maintenance[1] calls this reservoir of inner strength "gumption" and points out that you have to make an effort to keep the tank full. I see it as a kind of faith, not in God, but in yourself; faith that you can and will overcome whatever insurmountable obstacle you face. I try to keep that tank topped off by running, reading, and, despite how hard it is, taking regular vacations where I step away to disconnect altogether. That way, I can feel anticipation in the face of a challenge rather than fear or despair; anticipation of a journey that won't be easy, but will certainly be rewarding.
I don't know what it's like to be an entrepreneur nor am I currently on the job hunt but I feel like your post lessened your chances of hiring good people. You're sounding a bit desperate and discouraged. Maybe better to take the afternoon off and try again in the morning.
I think his honesty about the situation is a smart decision, especially for hiring. What's worse for a startup than having open job positions is to hire someone based on false optimism about the company and invest in training him, only to have that new employee quit after a month when the going gets tough.
The best person for a struggling company to hire is someone who believes they can help solve the challenging problems and will work relentlessly until the issues are resolved.
People are constantly trying to sweep their problems under the rug, hiding them from customers, investors, employees, and themselves. Smart employees are never fooled by this, and they'll end up viewing leadership as delusional, dishonest, or incompetent.
This guy at least recognizes and identifies the problems (or at least the symptoms of underlying problems). That's something.
I completely agree. I went and looked at his hiring page to see what kind of folks he was looking for. He's not hiring in a framework/language I'm familiar with, but if he was, I might consider applying.
Why is this guy being downvoted? Isn't that button for people who aren't adding to the conversation? (i.e. not for posts that express an opinion you disagree with)
I'm really surprised by the number of people trying to solve the author's problems. I don't think he posted this because he didn't have any good ideas on how to hire someone or wanted copy help on his hiring page.
I think he posted it because sometimes the most helpful thing is knowing that you're not the only one who wakes in the middle of night thinking about payroll and customer acquisition. I think he's wondering if other people have doubts and struggles. And anyone trying to start a company right now would know that as soon as they read it.
So, yes Jason, this is how it's suppose to feel and it's okay that it sucks. Just remember, you're more important than your work.
You might be right, but he did post it to a community that leans toward the hyper-male-minded-problem-solving side of the spectrum, so it shouldn't be surprising.
Just to chime in with the 'this is normal' crew, I work at Shapeways, where from the outside we (probably) appear to be crushing it. We just raised a big rouf from A16Z and have been written up in tons of blogs/etc.
For the past two years (since I joined), we've all been feeling the same thing. Scaling, running out of disk space, needing that one Product hire terribly, hearing from investors about that one feature we discussed back in Dec 2010 that is still 'a few releases away.'
I have fallen into this trap a few times as the dirextor of product.
However what I've realized, is one thing that helps me sleep at night:
Despite feeling like we're losing the race and not making progress, we've overhauled our architecture, revamped our entire consumer and internal software to be much more user friendly, built a strong release heartbeat to crank out one solid feature a week, rebranded the company, and built confidence in our org that people's ideas will be heard.
We've made great progress, and even though there are things that our CEO and investors still want us to build, I'm damn proud of how far we've come. I'm still scared shitless about conpetitors and hitting our goals for the year... And it drives me nuts when I see another company launch something that I'm excited about, but then I look back to our product 2 years ago, and I can't help but smile at how far we've come.
The only advice I can give you (apart from saying thst this is totally normal!) is to continue to focus on what's most important, not most urgent. Sure, many of the fires you described today sound terrible, but what is the #1 most important thing today? Is it revenue? Is it growth?
Once you've identified that, pick the single most significant thing you can do to make an impact, and do it. Then re-evaluate.
If you find yourself fixing the most urgent thing constantly (I.e. servers are slow, investor is calling), you will just run in circles and constantly feel like you're behind and not making progress.
If you as a company can agree on the most important thing at any time and run towards it at 200% velocity, that momentum will always make you feel like you're making forward progress.
Good luck, and feel free to email me (address in my profile) if you have questions or need a pep talk :P
Why add extra complexity into your system (and complexity which I've seen the smartest of engineers get wrong on the invalidation side just by overlooking one small detail) before you know your macro-level bottlenecks and product questions like "how many users will even use this feature"? Additionally caching can mask more serious systemic performance issues like missing database indices and accidental extra round trips to the database.
Better to focus on fundamentals and keep your code simple, then add caching only when it's needed.
Good points, but I can't help but feel like these issues should be considered and addressed during the early development of a service.
You're right, you can get into some serious trouble putting the cart before the horse. But, what gets me in this particular instance, is that 42floors is a service that's been on the market for well over a year. Their core competency, hell, core business, is search, and they still haven't implemented any form of caching.
I can't shake the feeling that caching search results, especially in this scenario, should have been a huge priority.
It seems like too many developers hear the mantra of avoiding "premature optimization" and interpret it as "unnecessary optimization."
Then they end up over a year into their business without having addressed something that should already be an integral part of their architecture.
It depends on your stack. I built a PHP app that could handle 100+ req/s per server with only app config data cached and a reasonable level of MySQL table cache.
For an MVC framework like Rails, however, cache is going to be needed much earlier. I'd launch without it but once I got some traction it's one of the first things I'd work on. Since Rails has built in cache support it's pretty easy to setup some basic caching.
I'm with you on that one. I wouldn't submit a site to Show HN without at least memcached sitting in front of it. And to run a legitimate service sans cache? That's just asking for trouble.
I don't know about that when you can simply go horizontal (automatically, even) if the need arises.
Building with cache: guaranteed added upfront cost, complexity, and time to ship, without knowing if/where caching will serve you best.
Building without cache: Guaranteed upfront savings, faster time to ship, with automatic horizontal scaling as a backstop if the need ever arises, while you work to integrate the cache.
And, remember, databases cache too. Throwing extra RAM and tweaking the DB cache config can also be a viable backstop short-term.
You don't really need caching if your back end is fast enough. It's just that the current trend is to use slow architectures with caching, because it's usually cheaper and faster to get version 1 out the door.
Hire remotely. I know right now in CL and BG there are good and not very expensive developers. And they would love to work for you.
I can't recommend IN developers, as they want to climb the corporate ladder more than coding.
And, no, I'm not interested, I'm in CO and I don't care about Ruby. The slowest framework I'm contemplating right now is Node.js, the other two are written in Lua and C++.
Once you have revenue/cost numbers, things with auto-prioritze themselves.
Quick SEO nitpick (and one more #ToDo item for you ;)
On bottom of home page, you have direct links to City/Neighborhood listings with relevant anchor text but all target pages (Search results) have just the title "Office Space Search" I would make them "<City/Neighborhood>+Office Spaces"
Really enjoy humanising posts like this - reminds me that doubt is normal.
As far as 42Floors, from the outside it certainly seems like they're killing it. I've been keeping my eye on them for a while, and have been impressed by both their app (a likeness can be drawn to Lovely in the residential space - both are awesome) and by how genuine they seem about taking a bunch of awesome people and having a crack at improving a massive outdated industry. If I thought I was a good match [I'm a PC-loving C# fan ;-)] I'd definitely consider working here.
When considering this type of transparency, there is a spectrum of types of people. Some prefer radical transparency where every possible pitfall and challenge is openly acknowledged and noted. On the other side of the spectrum, a lot of people don't want to have any knowledge of the challenges, and in fact, work most productively in a state of naiveté.
Part of hiring is understanding how different people respond to this sort of stress. For me, I really prefer this sort of off-the-record honesty. I know a start-up is challenging, and a failure to acknowledge a reality that I know exists is a huge turnoff. But I can definitely imagine that some hires would find this scary and would find a startup that seems much more "perfect." You attract who you want to attract.
My chairman once said to me "You feel like you are driving along at 60mph, while everyone around you is going 90."
I've come to accept that is a perennial feeling if you start a company in the valley. If you aren't one of the bright shining stars like DropBox or Facebook, you can't help but wonder how you could be.
I think that feeling might still nag Zuckerberg a little bit too, and it's even that feeling that helps make decisions like "we need to buy Instagram right now for a cool bill."
It's not all bad to want a bit more. Greed is good as they say.
All the descriptions on the left are about coding, and yet 5/7 open jobs have nothing to do with programming at all.
I've actually started to notice this a lot; companies focus on engineering to the exclusion of other sections.
I know, he's having engineering problems. But he's also having physical issues and clearly problems with the business plan and expansion model.
In this specific case there doesn't seem to be a working triage model. Find the things that are simplest to fix and do them first. Someone needs to keep organized and make sure the problems are being worked on in the right order and keep everyone motivated, without losing any ground in the day to day operations of the company.
I read the "Jobs" page and ran across something that I have a question about: what exactly is a "no assholes policy"?
While the page looks great to me there seems to be a lot of unprofessional text there. For me personally that's a red flag. I have no idea if that's an indicator of anything but unless I have a close friend who works there who can tell me otherwise I don't know if I'd trust a part of my career to a company that comes across the way it is portrayed on that page.
- The grey-on-grey of the overview map is an odd choice - why not use the green for the markers?
- Listings without a price should either be removable, or otherwise marked. Feels kinda scammy, and just introduces unnecessary friction
- Google is probably a partner for the listings images, but is it also a requirement for you to show a "y we have no imagery f" image with Google logos?
The most accurate part of this is that line near the end... "...nor will I mention the [A], the [Z], and everything else." That feeling of an endless list of responsibilities is a definitive property of launching a startup.
I personally would look to mount another office outside US. Make it in Spain, Argentina or elsewhere, put 10 good engineers to work in there with a good product manager and your engineer problems will be solved.
Good on you Jason, for an anti-fairy-tale post. It's good to hear we aren't the only ones! Keep prioritizing well and working with attention. Keep your cool and most of all: stick with it.
"Shiny Apple Products Seriously, get whatever you want (PC users may have to justify themselves)."
That will simply turn off some people and there is no reason for a self-interested business to do that. Apple computers actually are PCs, and always were but especially now they are PCs, so you should make a distinction regarding Linux. The top machine learning company in the world even has their own distribution of Linux[1](or flavour of Ubuntu, however you want to put it). They and many others who don't make such snarky remarks almost certainly pay more than you and are working on more interesting problems than you, you are just narrowing down your potential employees without any reason. So, even though it's in jest, remove that statement from your hiring page if you are serious.
[1]http://en.wikipedia.org/wiki/Goobuntu