5 ms·
> 6 (Hiring Bad Programmers) - This one also became a horrifying monster. Graham says "In practice what happens is that the business guys choose people they thi
by garraeth 7y ago
> 6 (Hiring Bad Programmers) - This one also became a horrifying monster. Graham says "In practice what happens is that the business guys choose people they think are good programmers (it says here on his resume that he's a Microsoft Certified Developer) but who aren't." Darkly hilarious in hindsight.
Anecdotally I see a variant on this a lot. Many times I've seen programmers get hired based on pedigree. "You worked at [xyz company or on abc project] you must be an amazing programmer!"
- api 7y agoI still often see "worked at google" or variations as a credential.
- scarface74 7y agoIf I were hiring for a startup. I would avoid someone who worked at Google. I would want someone who is wide not deep and could handle the stress and juggling that is part of a small company. Google seems to have more “smart people” (tm) who don’t “get things done”.
- jyu 7y agoThe amazing programmer at xyz company on abc project may have a lot of infrastructure and support teams boosting their stats. Start ups can't afford the overhead that makes a programmer amazing. Visa versa, a start up programmer may languish in xyz company.
- s1k3s 7y agoOn the contrary, the amazing programmer at xyz company may have a lot of skills that they developed from working on a large number of different projects, systems, teams and so on, because the large company has provided them with the chances to practice all those skills.
- barrkel 7y agoRoles at large established companies are not normally like those at startups. They tend to be on smaller areas of functionality, more specialized, and with little variety unless you swap teams (and that's almost like getting a new job). Starting something new is quite rare, and if it's done, it needs to integrate into a whole bunch of existing stuff one way or another; whether it's builds, deployment, auth, database, payments, UI stack, whatever - large chunks of the design space have been explored before and are pretty much set in stone unless you have a lot of political capital to spike something new, or the company is dysfunctional and doesn't standardize on anything, so that it doesn't present consistently to its users and its developers are less swappable between projects.
- s1k3s 7y agoI'll have to disagree. Having worked at a "large established company" during my career, I'd say that I've been given the chance to experiment with plenty of new things and projects are also started more often than you'd think, even though not all of them make it to a release. I understand your point, that just because you've worked at a large company it doesn't mean you have the right skills for a startup, however I will still hold my point: it highly depends and I wouldn't discard the opposite situation.
- barrkel 7y agoI've worked at both. I agree I wouldn't discard.
- scarface74 7y agoI’ve never worked in a large company where I would be doing everything from front end, middle tier, databases, CI/CD design, creating cloud networking infrastructure, dealing with vendors, designing operations, and talking with customers in the course of a month. This was me last month. Admittedly front end design is a major weakness of mine even though I do know JS well.
- nine_k 7y agoIn a startup, you have to make things quickly, and not necessarily well. What you are building today may need to be retired in 3 months, if not earlier. In a startup, you usually don't have the time or resources to play with tech and learn cool new things. Instead, you're hastily producing another simplest thing that could possibly work, using predictable tools you already know in and out. You're lucky if it's RoR or Node; you could be stuck with Go or PHP. In an early-stage startup you work long hours, and are preoccupied with two things: how to divinate what the users actually want (usually nebulous and contradictory), and how to quickly make it work this way. You can easily lose track of what's interesting in the broader landscape, instead of enjoying new hotness as it gets released. If you want some leisure, join a large established company, work efficiently, and you'll have plenty of paid time to fiddle with the cool stuff developed inside it, and elsewhere. Or become so advanced that a large company will task you with solving something actually novel, not amenable to off-the-shelf solutions.
- s1k3s 7y agoWhat makes one a good programmer for a startup? Wouldn't it make sense to have them as experienced as possible (i.e. worked at xyz)?
- cosmodisk 7y agoIf one has business sense. Understands that projects can't run forever and they have to be either completed or killed by a certain date.Has a concept of cashflow. Isn't arrogant with ' the customer should know better' or 'Why would anyone do that?'. Knows the balance between 'this needs to be improved long term' and 'we need sales today' and how to keep both running. Doesn't get involved in idiotic keyboard wars about spaces vs tabs,etc.
- s1k3s 7y agoAgree, didn't think of a lot of the points you make. However from my experience, "this needs to be improved long term" will stay exactly as is, forever, in favor of business requirements and it will be improved only when the business absolutely demands it to be.
- Benjammer 7y ago"this needs to be improved long term" isn't really something you can put on a quarterly roadmap though. I think a good startup engineer knows how to keep track of these things themselves, and knows when and how hard to push on project leaders to get something done about it. Imo, most of the "UGH why doesn't the business side care about this!?" is really a lot of engineers failing to properly communicate in business-speak with the rest of the company. If we can barely explain the bounds of what "technical debt" means and how we handle it to ourselves within our domain in software, how can we possibly expect people involved with business requirements and money numbers to ever meaningfully understand this concept?
- ratww 7y agoI'd argue that not all experience is equal. Sometimes developers with deep big-company experience have a skillset and habits that is great for big-company but terrible for a startup environment. The opposite is also true. Plus all the things @cosmodisk said on the sibling comment.