View RSS Feed

Caffeine and Donuts

Small Companies vs. Corporates - An Employee's Perspective

Rating: 2 votes, 2.50 average.
Some of you may know (I posted a thread on the topic) that I changed jobs in April. I used to work for a very small software company ( 10 people), and I now work for a contracting firm (300+ people) which has placed me at a large corporate (28 000+ people).

Having spent four years in a small company, I found that I had stepped into a whole new world when I started my new job. I wanted to share my thoughts and experiences with the forum. Of course, I can't generalize and say that all small companies are the same, or that all corporates are the same. Therefore, this post is based purely on what I've experienced. If you've had a different experience, please comment and tell us about it.

This is what I've learned.

What You Do
During the first four years of my career, I spent a great deal of my time being a Jack of all trades. If you have a limited number of staff, people tend to be forced to wear many hats. I wore a developer hat, an architect hat, a DBA (database administrator) hat, a tech support hat, a system administrator hat and an analyst hat. Nowadays, I get to focus on what my job title says - I develop software.

While one learns a lot via the "many hats" approach, you tend to lose your focus, because you hardly ever get to devote your full attention to a particular area of your work. Instead of being an okay-ish developer/database admin/analyst/architect/tech support hybrid, I would rather excel at one of them. It also leads to a great deal of interruptions - one could be in "the zone" while writing a program, and then you get interrupted by a tech support call. A five minute call can easily end up consuming an hour of your day - first you have to get details, then you have to trace the issue, fix it, and inform the user. After this whole process, you have to try and get into "the zone" again (there goes another fifteen minutes of your day). On the upside, it does teach you how to work under pressure and you get exposure to more roles (e.g. architecture and analysis) than the average developer.

On this note, because your role in a small company isn't as limited to development only, you have more power to influence high-level decisions. If you firmly believe that someone is taking the wrong approach to a problem, you are well within your rights to point it out, state your case, and have it done differently. In a corporate, however, decisions are made long before work reaches a developer. Therefore, thanks to teams of analysts sitting between the client and the developer, the developer can't ask as many "why" questions - when you get a task, you are expected to stick to the spec and make it work. Granted, because of the process (see below), the specs that reach you are generally solid, viable and sensible.

Also, in a small company, your day doesn't always stop at 17:00. Sometimes, no-one else is available, and you need to step up and get something done. Sometimes you need to work overtime, sometimes you need to support users after-hours, and sometimes you need to visit a client and spend a day (or an evening) there to sort something out. I have no quarrel with putting in extra effort, but if you have to do it constantly, you become a workaholic and your personal life starts to suffer. The corporate has very little of that (at least for developers). Sure, the pace is still fast and you still have to put in overtime sometimes, but generally, you get to walk out the door at 17:00 and not worry about work until you sit down at your desk the following morning.

How You Do It
When it comes to software development (and I'm talking about the whole life-cycle), the corporate has a very strict process. Small companies also have a process, but they seem to be more lenient towards bending the rules at times. The process is justified though - there are large sums of money involved. For this reason, there is no room for error. The drawback to this approach is, that while small companies can frequently deliver software (that is, "going live"), process can appear to delay this in larger companies. In a small company, you might see the software that you write go live every couple of weeks. In a large corporate, you may have to wait six months (or more) before you can see your software going live and adding value to the business.

Also, because corporates have more money, they can invest in tools to support the process. Money also means that staff can be sent on various training courses; some relating to process, other relating to the technical skills that we need to do our jobs. While the company foots the bill, individuals themselves benefit as well. Not only does the company gain something by having properly trained staff, the staff members also get the opportunity to put something new on their CVs, should they wish to move on someday. In my experience, small companies cannot always give their staff these luxuries.

Corporates can also afford to buy more toys (by which I mean technology). The technology stack that I'm currently working with is huge; again, this gives me additional experience to put on my CV. Herein lies another one of the key differences between my my current and previous jobs - in the small company, I did a lot of things (all the hats) using limited number of technologies. Now, I do one thing (developing code) using a large number of technologies. For a developer, this is far more appealing.

Who You Do It With
In the small company, I worked closely with a team of five people. All of the developers were pretty similar; we were more or less the same age, we had similar backgrounds, we grew up in the same area, three of us even attended the same high school. Now, I work with much larger, more diverse team. More people means that there is a larger skill-pool to draw knowledge from. People also come and go more often, so the pool is constantly changing. If you work with a small number of people, most of the knowledge that can be transferred between team members will be transferred relatively quickly, and from that point onwards, everyone stays more or less the same - the rate of growth (in terms of knowledge) slows down.

In a small company, you get to build close relationships with everyone, including management. In a corporate, you still build relationships, but only with the people on your level. You almost never get to interact with the higher-ups. You might run into them in a hallway once in a while, but chances are they won't recognise you - after all, they have hundreds of people working under them.

Where You Do It
Small companies have small premises. Large corporates have large buildings filled with all kinds of awesome stuff, like canteens, entertainment areas and an abundance of coffee machines. If machine coffee doesn't do it for you, you can always visit the building's coffee shop. In the small company, I spent almost all of my time at my desk, with occasional visits to the kitchen to go and make coffee. All of us had lunch at our desks. Nowadays, I spend my lunch hour in the canteen, often followed with a quick visit to the entertainment area for a game of pool or foosball. I have learned that one should never underestimate the immense value of a brief change of scenery - it clears the mind, and once you get back to your desk, your productivity is renewed. If you spend eight hours straight at your desk, your mind gets stuck.

What You Get For Doing It
I've already mentioned that corporates have more money. Therefore, it is no surprise that they can offer very competitive salaries which small companies struggle to match. To reiterate a previous point, corporates can afford send their staff on a variety of training courses and things that lie beyond the reach of small companies. They can also afford to randomly "spoil" their staff. Ever so often a big platter of fruit will appear in our area, or someone will come around handing out gifts: be it branded shirts, key rings, or boxes filled with treats. If nothing else, these little surprises contribute to a positive working environment - as shallow as it sounds, who doesn't like getting free stuff? Lastly, corporates can give large bonuses. This is not to say that I've never received bonuses in the small company, it's just that larger companies seem to do it more often, and their bonuses are substantially more. I like this - it contributes to my childhood dream of owning a Porsche.

Small Companies Corporates
Hectic workload Manageable workload
More power to staff Limited power to influence decisions
Limited tech stack Huge tech stack
Limited skills in company Huge skill-pool
Limited opportunities Lots of opportunities for growth
"Jack of all trades" Focussed responsibilities
Frequent "go live" Software doesn't "go live" as often

In closing, regardless of my experience, the most important thing is to find a place where you are happy. Some might prefer the power to influence decisions and the close-knit, homely feeling that small companies bring. Others might chase after the opportunities and the big figures offered by corporates. My advice to an IT graduate at the start of his/her career, would be the following: spend a year or two in a small company then spend some time in a corporate (or vice versa). Experience both and decide for yourself which you prefer. As for me, I love working for a corporate - I love the opportunities, I love the growth and I love the environment.

Submit "Small Companies vs. Corporates - An Employee's Perspective" to Digg Submit "Small Companies vs. Corporates - An Employee's Perspective" to Submit "Small Companies vs. Corporates - An Employee's Perspective" to StumbleUpon Submit "Small Companies vs. Corporates - An Employee's Perspective" to Google Submit "Small Companies vs. Corporates - An Employee's Perspective" to muti Submit "Small Companies vs. Corporates - An Employee's Perspective" to Laaikit Submit "Small Companies vs. Corporates - An Employee's Perspective" to My Yahoo!

Updated 23-Dec-12 at 06:10 PM by rfnel



  1. Dave A's Avatar
    Interesting hearing this from an employee's perspective.

    I have to say one of my greatest concerns about my growing business is the increasingly regimented structure that comes with the territory and seems entirely unavoidable. Great to hear it isn't seen as all bad news from the employee's point of view.
  2. Blurock's Avatar
    Glad to know that you are happy in your job. Very true what you are saying, but there are pro's and cons. I suppose it depends on the type of job you do. In your line you need to concentrate and you don't need any interruptions. Just beware of getting too comfortable and getting caught up in the rut.

    I got out of the corporate world 4 years ago and find that I am more productive and more innovative than ever before. The difference is that I am now the boss, no rather the captain of a team, which means that I now play ball with the guys and we all celebrate the results.
  3. PeterCarruthers's Avatar
    I loved this article. Almost everything I have read has focused on the challenges we face as we move from a real job into small business (especially those of us being retrenched and being forced into self-employment).

    It took me back thirty years to working in the development team at Truworths. I had forgotten how predictable each day was. (I "graduated" from there to a small firm for better money, before losing that job as the firm stumbled, by which time the only way I could survive was to start my own business.

    That structured environment is far more sustainable than the somewhat more crisis-laden environment at you average small/medium enterprise.

    Nice insight. Thanks.
  4. rfnel's Avatar
    Dave, thank you for your feedback. If a change contributes to the growth your business, everyone wins - including your employees - I don't think any sensible employee can have a problem with that. As long as it doesn't get to a point where the process and the structure is so restrictive that it actually starts hampering employees; then it becomes a serious problem.

    Blurock, I have serious objections to getting caught up in ruts. I'm happy as long as I feel that I'm growing. Once I start to feel like I'm stagnating, I become miserable. One of the greatest things about my current environment is the fact that I feel like I've learned more in the past eight months than in the first four years of my career put together. At the end of the day (in my opinion), a great deal of it comes down to the people that you work with, the skills that they possess, and their ability to transfer those skills. The people I work with are constantly (sometimes unknowingly) pushing me and encouraging me to grow. Be it in a small team or a large team, team spirit is important; whether you win or lose, you do it as a team. It sounds like your management style is very "hands-on" - I like that. When a manager (or as you say, a captain) is a genuine part of his team, instead of a high and mighty overlord, good things are bound to happen. I'm fortunate enough to be able to say that all of the bosses that I've worked for were like that.

    Peter, thank you for your kind words. You've pointed out that a structured environment is far more sustainable than the crises-laden environments in smaller firms. My first thought is that it relates to the manner in which risks are handled in different types of companies. In the corporate environment, risk is taken seriously; contingency plans are put in place and everything is double- and triple-checked by numerous people before being singed off. In small companies (specifically in IT), I think a greater focus is placed on delivery, and risk becomes more of an afterthought. Sadly, once Murphy's Law kicks in, it can easily start a downward spiral of crises which is hard to recover from. On the other hand, if a risk becomes a reality in a corporate, it can be addressed more easily, because it had been identified and catered for early on.
  5. vieome's Avatar
    Great Article given you in I.T thought you might find this link interesting reading