Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

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

I've been a software developer for 8 years. I've worked on about 20 projects, some smaller, some bigger. I know how to help myself by using google magic, msdn, youttube, tutorials, how-to's etc.

I'm playing around with the idea to get a friend of mine (who has been a software-developer for 5 years) and start my own software-developer-company.

What do you think are the preconditions to get myself from a freelancer to owning my own little company with 2-3 employees?

share|improve this question

closed as off topic by Yannis Mar 7 '12 at 15:01

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

Is this a question for onstartups? – k3b Mar 14 '11 at 11:01
Are you doing custom work for others or are you planning on an application to sell? – JeffO Mar 14 '11 at 13:37
up vote 12 down vote accepted

I did it and ran my company for two years

Couple of pointers that might help

  1. Keep your costs to a bare minumum ( e.g. get an office only when you can sustain it )
  2. Make sure you have enough investment even backup capital
  3. With any business, think of it as a strand of thread. Both the start and end of the thread should be in your hands
  4. Partnerships rarely work these days.
  5. I do not like the sound of 'a friend of mine' . Come on, give an add in the paper you can get an actual employee you can formally instruct.
  6. Also get the business on its feet by yourself first. You can do it. You have been doing freelance. Get the employee later only when you can't handle the load yourself
  7. An employee's wage can be more than the rent of your office.
  8. Make a rule, engrave it on your wall. Always 50% before the project starts and 50% before the project is handed over. This way you never run into problems.
share|improve this answer
@Imran: you provide "how to run a company" advices. While they are very valuable, the OP was asking for preconditions. – user2567 Mar 14 '11 at 10:41
@Pierre: although English is not my first language I would say that having an understanding of these basics should be his precondition – Imran Omar Bukhsh Mar 14 '11 at 10:47
Thank you, it was not exactly what I want to know, like Pierre said, but it's helpfull too! – Kovu Mar 14 '11 at 10:49
Gave you a +1, because you're 87.5% correct. Partnerships are important: you cannot do everything. I can write code and train much better than I can sell or design, so it's better to get someone else to do those things than to try to do it all myself. – user4051 Mar 14 '11 at 10:51
Imran, 50% of what? – TeaDrinkingGeek Mar 14 '11 at 12:23

I had my own company few years back from now. I was arguably too young/unexperienced to really handle 3 employees and my partner probably wasn't the best choice. But I can tell you, it is a hell lot of extra pressure and responsibility, that I felt I couldn't handle.

The thing is, if you are having problems with money as a freelancer, then that's not nice, but it's your problem and something you already accepted, when you choose freelancing over employment.
Your employees however chose a reliable income, and by employing them, you chose to provide that.

A question you should ask yourself: What is the advantage of a company?

As a company, you could take on bigger projects. But that is not, because you have a company's overhead, but because you have its infrastructure and manpower. However in the software industry, you can have the latter without the former.

An alternative to a company with employees is a freelancer network, i.e. a loose association of freelancers, such as you and your friend and possibly other people you've worked with, who complement your skill set.
You can share a lot of infrastructure, such as accounting, web site, portfolio, support, acquistion etc. while offering quite a lot of flexibility.
As a company with employees, you have to pay a lot of people, even when they're just sitting around. In the end, the customer must pay. With a freelancer network, this is not the case, which gives you an advertisable advantage. And also, nobody within the network has to take responsibility for everybody else, which is an advantage for you.

share|improve this answer

Being ready to make sacrifices is probably one of the preconditions.

  • ... such as paying your employees before yourself when things don't go like you wish,
  • ... or stay later because that customer did not understand he would have to wait another 2 business day to get his work done,
  • ... or driving that old toyota an additional year because you didn't get pay on time for the last 3 projects and you are a bit short on money,
  • ... or being really tired in the morning because last night in bed you were unable to remove all the problems you still have to solve from your mind,
  • ... or loosing all your savings because you had to refill you company's bank account because your ignorance about taxes made you owe a significant amount of money to the gov,
  • ... etc

If you can afford to go trough that kind of problems, you will succeed.

Please note that all the problems I'm listing can be avoided just by doing thing right. However very few people are capable of doing so. Looks like the average human needs to fail to learn. Telling the average human that he should do thing differently doesn't work.

share|improve this answer
Thank you, the most things you told I allready done in Freelancer-time :) – Kovu Mar 14 '11 at 10:49
You are vaccinated ;) – user2567 Mar 14 '11 at 10:55

It is hard working for yourself as others have said. You want to do some reading about running a business and what informs the decision to bring other people on board. On the whole the advice I have understood is to only take other people on when you have enough work that they will pay for themselves, but then to take other people on as soon as possible when that happens, so you can free yourself up to bring in more work. I would definitely avoid getting a group together until you have enough for each person in that group to do.

Depending on what kind of work you want to do it's worth reading some general books on business thinking- for example Richard Koch on 80/20 thinking is handy and I've heard Getting Real well recommended as well.

Think about what you enjoy. I worked for myself and what I found was that I got to do less of what I enjoy ( actual programming work ) and more administration, searching for opportunities, communicating with customers, chasing up late payments, chasing up late payments more, sending strongly worded letters about late payments and generally engaging in the parts of the work that I really didn't enjoy.

share|improve this answer
+1 - late payments suck! – Mat Nadrofsky Mar 14 '11 at 12:13

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