Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

When I look at things like Twitter, it seems like the idea is so simple to implement initially that the founder does not have to be very technically talented. Basically it's just a guy with a good idea. But when an app / software blows up and entails much harder engineering problems, how does the founder deal with it?

Have we seen cases in which the original guy with the good idea somehow falls off the enterprise as it becomes more about technical challenges and less about ideas?

share|improve this question

closed as primarily opinion-based by Snowman, durron597, MichaelT, GlenH7, Bart van Ingen Schenau Nov 3 '15 at 14:49

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.If this question can be reworded to fit the rules in the help center, please edit the question.

It was actually a perfect question for, but that site got closed down due to inactivity... – Jack Scott Apr 15 '14 at 5:20
Hatching Twitter discusses some of these very issues which twitter has as they expanded. – Fred Thomsen Apr 17 '14 at 22:11
up vote 29 down vote accepted

When you get large enough that scaling well really matters and you have to start dealing with things like caching and database tuning, hopefully you are making enough money that you can hire somebody who specializes in performance tuning (or even better, a team of people, each specialized in a different sub-area).

When a startup begins, each founder has to do a bit of everything. I'm a coder, but I help with marketing and do some of the accounts, because there are just not enough hands to have everybody do only the thing they are best at. You want a small number of generalists.

In an established business, you want everybody just doing the thing they are best at. If you have a gap in expertise, you fill it with somebody who has that expertise. You want a large number of specialists.

share|improve this answer
That means the founder relies on his good idea to get funding, then use that funding to acquire talents to do the engineering? So when the business matures and becomes technical, the founder doesn't really contribute anything anymore but simply owning the business? (Not to pick on Twitter here but I'm trying to think what else can the founder add at this point.) – Heisenberg Apr 15 '14 at 5:42
Hopefully the founder can still offer in-depth knowledge of both the problem domain and the business itself. It's also a common business saying that to grow and be successful you should be working on your business, rather than in your business. – Jack Scott Apr 15 '14 at 5:44
@Anh: A decent coder can, with some effort, produce a product which handles a giant chunk of users. By the time there is a scaling problem, revenue is coming in (from the users causing the scaling problem). This revenue is sufficient to A) pay an expert and B) upgrade the hardware to provide a buffer while the expert fixes the scaling problems. Of course, this strategy doesn't work for what Joel Spolsky calls the Amazon growth model (in which case the founder is relying on his good idea to get funding). – Brian Apr 15 '14 at 7:58
'the founder doesn't really contribute anything anymore but simply owning the business' The founder contributes vision at this point. This is the reason why he/she the founder and the hires are just hires. One had vision, the other merely had technical skill. Founding and growing a business requires far more than just a good idea. It requires vision: the ability to imagine the future and guide everyone in the same direction. The founder rightly reaps the rewards of ownership at this point, having put in the late nights and risking his/her pants when hires did not ;-) – Dr. Andrew Burnett-Thompson Apr 15 '14 at 10:26
@ArTs and others lost as they spent too much time on making their architecture "scalable" instead of bringing value to the user ;-) you have to navigate your path .. – johannes Apr 16 '14 at 10:48

The founders of the company can come from a lot of different backgrounds: they might be marketing folks, or sales folks, or just someone in a different industry altogether who want to build their own organization. They might be money guys trying to cash in on a hot industry idea. So it's pretty common in the early days of a startup to have a huge disconnect between the organizational vision and actual technical capabilities.

On the other hand, sometimes the founders are very technically savvy. The best situation is when the founders have both strong technical skills as well as "business" skills.

In the early days of a startup, the technical resources can get stretched very thin. So they may be playing lots of technical roles compared to working in a big shop where people can focus on a smaller set of tasks. Also, startups are typically short of cash and sensitive to how much runway they have, so it's common for them to pay less. This means that they bring in people who are building their technical skills, or trying to prove themselves in the industry.

The stereotype is young guys who want to program all day in the office, working for peanuts, sleeping under their desks at night.

As an organization grows, there is potential for people with real talent on both the technical side and on the "business" side to emerge. But sometimes the organization needs to add the talent they need as they grow and get more money.

Scaling is just one aspect of that growth. There are other important technical capabilities, such as harnessing advanced technologies, creating a compelling user experience, and (nowadays) handling huge amounts of data.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.