Slashdot Mirror


Encouraging Growth in a Software Company?

entrepreneurial asks: "I'm putting together a business plan with a few partners to start producing software for fun & profit. We have a decent early product, several interested clients and enough talent to get things started. The problem gnawing on my mind, however, is how to grow it? I can see us reaching a point in the not so distant future where four or five guys just aren't enough and we have to start bringing in more people. I've worked in massive, faceless bureaucracy and a couple of smaller, mature companies that had already reached the top of the growth curve, so I've never been there. Can anyone out there share some advice, war stories or resources to help?"

35 comments

  1. Here we go by Anonymous Coward · · Score: 0

    Here are some helpful URLs on growing the company:

    Tata Consulting
    WiPro

  2. Outsource it all to India by vasqzr · · Score: 0, Flamebait


    You can hire ten Indian programmers for what you pay 2 here in the USA.

    1. Re:Outsource it all to India by Anonymous Coward · · Score: 0

      And you only lose 75% of the quality.

    2. Re:Outsource it all to India by Anonymous Coward · · Score: 0

      No, you don't.

      Unless it's a unique custom solution that has never been invented before, you won't lose a bit. Give the Indians the UML specs, the project requirements and deadlines, and they will do a great job at $2 per hour.

      If you need some innovative R&D and designing stuff like algorithms or optimization routines, hire Russians.

    3. Re:Outsource it all to India by vasqzr · · Score: 2, Funny


      If you need some innovative R&D and designing stuff like algorithms or optimization routines, hire Russians.


      A colleague tried that. They got all drunk on vodka and made some program with colored blocks. I think it was called Tetris.

  3. Start hiring by Kethinov · · Score: 2, Insightful

    The best way to motivate people is with money. Hire more people. Maybe it isn't an option for you, but it is the best way to go. The "faceless" companies you talk of do get things done. Besides, there are ways to run a company that don't resemble Mr. Anderson's job in the Matrix. Take Google's headquarters for example. Massive company and one of the best work enviornments there is.

    Trust me, I have experience working on volunteer projects that stymied. If people were getting paid to work on it, the projects wouldn't have stymied. We live in a money driven society. It shouldn't be that way, but it is.

    --
    You're right, I wouldn't steal a car. But if it were possible, I sure as hell would download one!
    1. Re:Start hiring by Tool+Man · · Score: 2, Interesting

      It isn't obvious that these guys need to hire anyone yet, so this is premature.

      The company I work for started out as a couple guys, with one client. It's grown since, more like 225 people, but it grew only as needed. That time with some focus will help to iron out some kinks before growth makes those kinks bigger.

      I would think that some structure is needed right away. Pick the boss, delegate the rest, and stick with it. It can't stay too democratic for long, as decisions do have to be made. Our CEO and Exec VPs were the original programmers, and some are still development-focused; the important thing is that they're all still here, years later.

      Another thing, is find a business-oriented ally. My understanding here is that the original client became that ally, encouraging product development and sales to much larger clients than themselves.

    2. Re:Start hiring by sql*kitten · · Score: 1

      The best way to motivate people is with money.

      No, the best way to motivate people is with opportunity for self-actualization.

      For some that's money... for some it's training, for some it's working with cutting-edge-tech, for some it's tuition subsidy, for some it's on-site childcare, etc etc. You need to sit down and work out "what sort of people do I want, and what motivates those kinds of people".

      Throwing money at academics doesn't work as well as throwing money at bankers. And bankers couldn't care less if you expect them to show up at 7.30AM for work, but hackers would rebel. Those are just a couple of examples...

    3. Re:Start hiring by b!arg · · Score: 1

      The best way to motivate people is with money

      Actually money does not motivate. Money reduces the dissatisfaction one has with a job. It does not increase the satisfaction one has with a job. Money given as a raise (but only a merit based raise) can increase satisfaction but as a result of the recognition, not the money itself. If you were an underarm deodorant smell-tester (specially designed for gamers :)) that made $200,000 you would most likely do enough not to get fired. But it would not motivate you to go above and beyond your job duties (whatever they may be *shiver*).

      --

      Everybody dies frustrated and sad and that is beautiful
  4. Before you worry about growth... by Agar · · Score: 5, Insightful

    ...worry about the stability of the team you currently have. Any friction or personality conflicts will be exascerbated by both success and failure, potentially tearing apart your core group before you really reach growth phase.

    Make sure you have clear roles (who really is in charge?), ramifications for non-performance, and -- I can't stress this enough -- written agreements on company ownership and compensation, vetted by an attorney and signed by all parties.

    If your core group includes personal friends, these issues get even tougher because of the emotional baggage and existing interpersonal dynamics.

    Beyond those points, my advice towards successful growth would be to think in terms of roles and responsibilities. Fill the roles with people that can perform the jobs the best. Management by concensus does not work in a fast-moving industry.

    1. Re:Before you worry about growth... by sglane81 · · Score: 1

      Better yet, watch "Startup.com" which used to come on HBO. But, don't do what they did. ;)

      --
      This is the Internet. You can say "fuck" here. - AC
  5. Keep it flat by BoomerSooner · · Score: 2, Interesting

    The best place I've ever worked had a very loose structure.

    Partners
    |
    Managers
    |
    Consultants

    There are about 85,000 employees. You don't work under a specific manager you work with managers. The managers would decide where the resources best fit the current need. You were always one person away from one of the owners. Not too bad of a layout in my opinion.

    The worst companies I've worked for have 10+ layers between the low level grunt (programmer) and the CIO. Totally unnecessary in my opinion.

  6. Sounds like you're up for hiring a CEO by prostoalex · · Score: 1

    The least painful way to accomplish what you're describing is to hire a CEO. Maybe a COO as well, but for a small company under 50 people it doesn't make sense to have a separate COO.

    Whose money is the company built on? If you have any venture capital investment, the capitalist might have a CEO handy. I am not saying that it's the best option, but sounds like your company is ripe for professional management, even one brought in from the outside.

    If you don't have venture capital, network with friends for someone who has an MBA, general understanding of software business, and demonstrates himself as energetic and committed person. Business majors are currently suffering from low employment rates, too, so finding someone you can work with for a decent pay should be a valid option.

  7. You need books full of advice by hey! · · Score: 2, Insightful

    And still it's going to be unpredictable. Let's face it, if you could build a business from a cookie cutter approach, somebody else would have done it. This why people buy franchises.

    If I had to limit myself to three pieces of advice it would be this:

    (1) Learn how to make use of your business plan. The demands of survival will often compete with your vision for the business. Your business plan needs to be kept up to date and realistic; and while you must be opportunistic, you have to be aware when pursuing stopgap opportunities the potential cost to your long term vision. You're going to find that three or four years seems like a long time now but I guarantee that at the end of that period you're going to wonder where all the time went. Time goes by incredibly quickly, and with it your chance to make your vision come true.

    (2) Be ultra-careful about who you bring on, either as an investor or as an employee. Get as many references as possible and grill them in minute detail. It's not like you are some huge company with massive inertia: you are half a dozen guys, a single star can lift you all up, and a single dog can bring you all down.

    (3) Learn to maintain a positive and cheerful attitude through chaos, fear and disappointment, because they all come in some measure to every new company. Remember that nobody forced you to do this, and be determined to have fun. It will also keep your creative juices flowing and keep you from becoming preocuppied with regrets and blame.

    --
    Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  8. Cart before horse by DrSkwid · · Score: 5, Insightful

    Statistically your company, like hundreds of others, is doomed to fail.

    You need to work out how you are going to survive before you work out how to grow.

    Technical skill is not enough, you need people for support, sales, accounting and other admin.

    Try not to borrow money, surviving without debt is a great lesson.

    If you are the leader, be ready to give up the reigns when necessary, you won't need to micro-manage everything and one day even your presence might be a liability.

    --
    There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
    1. Re:Cart before horse by jgardn · · Score: 1

      Try reading a book called "eMyth", which has nothing to do with the internet and has everything to do with why businesses can't get started and what successful businesses do to begin a growth pattern.

      It basically revolves around clear roles, the development of processes, and hiring people who aren't bleeding geniuses to compensate for the lack of structure in your company.

      It's like writing a program, but for an entire company. If you get the algorithm right, and if you get all the components working together properly, you will have created a money printing machine.

      --
      The radical sect of Islam would either see you dead or "reverted" to Islam.
  9. two letters by mattboston · · Score: 1

    VC - you need to find a Venture Capitalist

  10. Take it slow, prepare early and more by mosabua · · Score: 1

    I have been in a few places that experienced the growth and helped were I could. Just a few tips:

    Prepare early - You will have to keep things under control when everything starts to get faster. Prepare as much as you can BEFORE you start exploding. This includes project management, time tracking, office admin, staff introduction kits and so on. The more of these procedures that help you enhance you efficiency you have in place the easier you can grow. Once you start growing quickly you wont have the time to establish the procedures..

    Focus on quality - Never forget why you started to grow... because to do the right thing. Dont start pissing off your clients or other stupid things just because you got this other bigger client. This will bite you back.

    Maintain good team environment - Treat you people at least as well as you would want to be treated yourself. Only a low staff turnover can keep you under control.

    Take it slow - If you seem to loose control, slow down. Better grow a bit slower but keep things under control and deliver the right quality then grow fast and stuff up.

    Look at the long term - Always keep in mind where you want to go. It might be better to be a good small company than a shitty large one..

    Get help - There are a lot of people around that have done it before. Network with them, maybe hire someone .. take all the expierence you can get from others... listen ..

    I am sure there is a lot more... but these points will get you on track ...

  11. Managment is key by Graelin · · Score: 3, Insightful

    Managing growth is where the PHBs come into play. Smaller companies are usually made up of just a core group of people who already work well together and understand the strategies of the company. Not a whole lot of real managment is required at that point.

    When you start adding talent, above a dozen people or so, it becomes paramount to streamline all the communication in the company. The person(s) at the top, who today participates in product development will now become more of a project manager / operations officer directing information and keeping the pulse of the company.

    Encouraging this growth is difficult to do sometimes since your core team will likely be overachievers - thinking they can do it all. This leads to re-active growth, which can be a bad thing. So make sure everyone has a clear growth strategy, including when and what new resources to bring in. This will allow you to be careful and take your time - this is critical.

    As far as managment structures go, get the founders together and develop a structure that everyone is comfortable with. Titles are relativly meaningless in a small company - only 3rd parties will care if you're the CEO or not. So make sure that your title reflects what you actually do.

    Get your stars in a list right now - and give them high-end titles. These are the people who your company could not function without and, if yuo trust them - and you should, will be deciding who to place in roles similar to theirs.. under themselves. So their title should reflect that authority.

  12. And the problem is....? by Anonymous Coward · · Score: 0

    You mean the best-selling game ever? Yeah, so what was the problem of your colleague?

  13. growth shouldn't be your primary concern by Tumbleweed · · Score: 2, Insightful

    You have MANY more things to worry about first. And remember the saying, "Growth for the sake of growth is the ideology of a cancer cell."

    Make sure your business is going to WORK first. Make sure the people are happy, and you know how to keep them that way. Same thing for clients! Concentrate on _stability_. It's critical in the current climate. Make sure your products are of the highest quality. Promite little, deliver more. That kind of thing. Keep control of your company! The more control you dole out to investors to grow, the more likely it is you'll lose control over your company. Once that happens, it'll almost certainly turn into a place you DON'T want to work at. Learn the lesson of Phil Greenspun, okay? (look it up - I'm too lazy right now)

    There's _nothing_ wrong with being a small profitable company. And there's a LOT to be said for being a privately-held company. I've been through *many* startups here in Seattle over the last several years, and I've seen all the mistakes. Trust me, you do *not* want to lose control over the company; that's the worst possible thing that can happen. _Everything_ is downhill from there.

    Also, get yourself a real CPA. If you're in the Puget Sound area, I recommend "Cook & Company" in Lynnwood. Excellent people. And get yourself legal counsel. You may be able to get away with PrePaid Legal for the cheap & easy stuff.

    Good luck, and Stay On Target!

  14. How to Grow by mugnyte · · Score: 1

    Water Frequenty

    Believe in the existance unnecessary growth and trim it

    Get plenty of sunshine

    Vary your surroundings

    Empower people to decide their own environment and schedule

    Ask people their opinion and sometimes follow them

  15. Encourage growth by sharkey · · Score: 0, Offtopic

    Eat bigger meals.

    --

    --
    "Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next.
  16. Marketing by 4of12 · · Score: 2, Informative

    ...several interested clients

    You've already had some brushes with a critical ingredient: those people that are willing to pay money for your product. Names, phone numbers, and people that are willing to say they'd pay X for your product that does Y.

    If you're talented and have some background in marketing, you can pursue this further, because it needs to be done. Finding out what your customers really want is not as easy as it sounds.

    If you're a rational, intelligent person not in need of frequent ego inflation, then you know which subject areas you're good at - say, programming - and which areas you're not familiar with. That's OK; there are specialists for every craft, including marketing. The next step is to get someone on board who knows marketing, preferably of software and preferably with a background in the same areas that your customers interests lie.

    --
    "Provided by the management for your protection."
  17. 2 comments by avoelker · · Score: 1

    Bill Gates said to a confidant early-on that he could see MS growing to $1B in sales, but not beyond that... Now look at them. If you execute well on a viable business model, new opportunities will present themselves you can't see beforehand.

    The reason for existance of a business is to make money, which it feeds on. I wouldn't start a business without the primary goal being to make income. Fun will follow. Of course, you should pick a business you are interested in.

  18. typo! by Tumbleweed · · Score: 1

    "Promise little, deliver more." promite. What was I thinking? *sigh*

  19. Two more letters by MarkusQ · · Score: 1

    VC - you need to find a Venture Capitalist

    Nooooooo!!!!!

    A pact with the devil is a better long-term plan than bringing on venture capitalists.

    -- MarkusQ

    1. Re:Two more letters by BJH · · Score: 1

      Yeah, at least the Devil only tries to take your soul after you're dead.

  20. May I recommend by xutopia · · Score: 1

    you actually write a business plan for profit only? Most banks don't give out cheques to people who's business plan says "yeah we want to have fun and make some profit".

  21. Hire me ;) by complete+loony · · Score: 1

    You could hire me ;), I'd have to telecommute from australia..
    From another thread (posted by SiliconJesus (1407)) Slashdot JobCenter

    --
    09F91102 no, 455FE104 nope, F190A1E8 uh-uh, 7A5F8A09 that's not it, C87294CE no. Ah! 452F6E403CDF10714E41DFAA257D313F.
  22. Alternate suggestion by Anonymous Coward · · Score: 0

    Since you are getting your business advice from Slashdot, I suggest you start deciding which of you will get laid off first.

  23. If you want to bring more people on eventually... by jgardn · · Score: 1
    ...adhere to strict software development guidelines.

    If a new developer joins the team and discovers that the old developers had graciously...

    • Commented their code liberally
    • Documented the code, use cases, and architecture
    • Provided unit tests and test plans
    • Left notes on why things were done one way and not another
    ... the effort required to get up to speed will be greatly reduced.

    I can't count the number of times where I've joined a team, spent 6 months investigating how they put things together, and then discovered that if I just rewrote everything from scratch, but this time document, test, and comment the code, we would save a ton of money versus trying to do that to existing code. It is especially popular in smaller companies where the software developers just don't have a lot of experience or they forget important things like project management and testing, that these problems are most evident.
    --
    The radical sect of Islam would either see you dead or "reverted" to Islam.
  24. How about a dynamic company? by PurplePhase · · Score: 1

    Sorry, too many ideas and not enough continuity. But here's what I threw together:

    Don't add new employees. Yet. That can be the hardest part of a company - and after a point you have more and different rules to follow for your business. Er, so I've heard.

    I don't have any resources for this, but I hope others chime in with them because I've been interested in it since I first heard about it but lost whatever links I had along the way.

    The idea to pass along to you is to have a dynamic company. Some website(s?) list projects and pay for completion and people accept or bid on them. Another had professionals register then when a project came up the group was chosen (how?!) and they worked together (usually from across the world) to complete the assignment, then after it finished they would have their own time until something else came along and another group would be formed, etc.

    The idea I would promote from all this is to combine these and the open source model: If people like your project, they'll come. If there's $$ involved it can be even better. If your company can deal with people who have their own schedules, it's a bonus. And if your company can react quickly to people not carrying the weight they said they could, the project has a much better chance of thriving. And skip your overhead.

    I haven't had much personal experience with a distributed development group, but the idea is attractive. After some standard questions you figure out what portion you're willing to risk on each new person and assign something to them with a gift or whatever upon completion. Depending on the seriousness of time constraints you can add bonuses and also retain the ability if there is no progress to drop them and reassign the work to another person.

    Those who are the good worker bees get access to more work-portions to complete, then more complex ones, etc.

    That's if you can manage to divide up the work properly which would require planning and possibly even (oh!) design.

    I don't remember what the wording was in the ones which I did see, but basically you have a short agreement with each person for each piece of work... or, um, do a reverse e-bay to more clearly convey that there is no employer/employee nor contractor/contracted relationship. Just work to do and gifts (whatever) to give.

    Again, I don't have experience with this, but I find it attractive (with the right mechanisms) and would like to participate in such a venture.

    I'll even write the website for the mechanism if you want to host it :)

    8-PP

  25. Grow Slowly by eclectic_echidna · · Score: 1

    Set a high watermark for incoming developers. The question for your interview team is: "Would I really like to personally work with that person on any project"? Even if you aren't "stuck" with them on your particular part of the project, don't "stick" them to another team, you will end up working together sooner or later. Just drop them, and keep searching.

    Grow slowly, at most 1-2 developers a quarter. That way, you can teach them about the existing procedures and culture, and also take in what they bring.

    Always interview (1-2 a week), you will never know when a gem becomes available. Why would you think that it always cooincides with your needs?

    Keep an open door. Let programmers feel comfortable that they can call you and the other partners total complete nit-wits. Why? Storming is part team building. And also, what makes you so special, just because you started a company doesn't make you Gods choosen ruler. Listen to those developers, they know shit(if you hired the right ones)...

    Oh, yea, and make it a point to hire women and minorities. There is nothing worse then a 40-person software company with only 4 women, and no minorites. Diversity rules!

    At the least, the mens bathroom would stink from 36 asses, and the 4 women would have personally assigned stalls. How fair is that?

    --ee

    --
    Antiquated competence won't be a job skill forever.
  26. joelonsoftware.com by PinglePongle · · Score: 1
    is worth reading - he writes very eloquently on this topic.
    From personal experience :
    • Hire a hard-ass financial controller. Make sure someone asks all the hard questions about how growth gets funded - don't rely on the customer-facing folk, their job is to be gung-ho.
    • Start out with a scaleable development process; I'd recommend something like Scrum or eXtreme Programming. The point is that when it comes time to scale up the development team, you don't want to find out that the old ways of getting stuff done don't work anymore, and you have to invent a bunch of new processes at the same time as getting your new team members up to speed.
    • Start acting like a big company in other ways. Make sure you've thought about (and written down) the things that non-owners tend to care about - how you reward people, how you measure their contribution, what your standards are for performance and contribution.

    Good luck with your endeavour.
    Oh, final piece of advice : Don't rely on /. for this kind of advice !
    --
    It's all very well in practice, but it will never work in theory.