Why every developer should do a side-project, and why companies should let them

Side projectIn my honest opinion every developer that wants to improve their skills should at least run one side project in their career .

And I mean every developer; don’t wait until you have a grand idea or postpone until its “your turn”. Just go pick a topic or little solution to a problem and GO. Create your scratch for that itch and undergo the entire process from idea to creation to launch.. Perhaps even support or after sales.

Find out why you’d go and start creating your side-project today and why your boss should let you after the break.

 

[ad name=”Generic Large Mobile Banner 320 x 100″]

The high-level benefit of creating your side-project is that you’ll touch every aspect needed to run a service or provide a product. And that is more than just building code or making cool techie things. When you undergo the entire cycle of creating your SaaS or mobile app or whatever coded solution you’ll touch the entire scope of what it takes to SHIP IT. From sales (building a cool product is one thing, getting people to use / buy / subscribe to it or even hear about it is what matters more) to defining the minimum viable product (see @matthewkremer‘s website on that topic).

There are lots of images and schemes that show all aspects of creating a service or product but one of my favorite is the Product Management Triad image (source: Pragmaticmarketing.com) that shows how many factors make up a single (side)project:

Product Management Triangle

As a developer we tend to stick in the technical area most of the time. Working on a side-project will let you work through different areas and helps your developer brain to evolve skills like:

  • Creating a MVP definition; defining minimum scope that will result in a product that is viable for your users and yourself
  • Defining financial models for cost coverage or a few extra bucks
  • Marketing of your product using online advertising, creating landing pages, email lists, branding, etc.
  • Technical assessment of components, libraries and frameworks to help you realise your idea

Knowledge is power

As a real life example: working on a side-project of mine – one which I haven’t even realised yet: it’s in the marketing stage – I’ve learned the following so far:

  • Facebook adds: creating an ad campaign and online presence using a Facebook page (branding)
  • Social media marketing
  • Design and content management by creating a landing page
  • Improving my marketing and communication skills with potential end users using Mailchimp (including email marketing campaigns)
  • Working on getting community feedback using surveys using TypeForm
  • Improving technical skills while working with AngularJS, learning a nice i18n library called Angular-Translate and creating angular+gulp based projects using a Yeoman Web Scaffolding library called generator-gulp-angular.

Why should your boss care? After all, sideprojects will just distract employees from their work and fatigue them with effort that should be put into their day jobs, right ?!
If that’s whats happening, i would doubt the professional level of the developer as a person and not the concept of a developer working on a side-project. Furthermore, the risk of an employee getting so much income from a side-project that they’ll bail out and start on their own is very (very) low. And even if a developer should end up with that rare outcome, it’ll reflect good on your company if their employees are star examples of a successful entrepreneur.

DisclaimerDo not create a sideproject that forms (in)direct competition with your companies services or products.
Although this might be obvious for the most of us I want to explicitly advice you this. One of the most common fears that companies have is that their employees learn stuff and become great at it and run off while copying the products or services. Do not do that, ever. If you have a transparent, innovative and openminded culture at your company I even suggest indicating that you’re about to work on a side-project. And if you’re in doubt if it forms some sort of competition for your company verify it with your superior(s) and formally get an approval on the project. That way, formalities have been checked and you can rest assured that you won’t be sued when going live with your lil’ side project.

I really think that the advantages of employees working on a side-project from within their skill range outweigh any risks of them cutting slack at their day jobs.

Some of the big advantages for a company when their developers run side-projects are:

  • developers will appreciate the work that colleagues in other fields of expertise (sales, marketing, communication, project management, architects, support, etc, etc) perform even more since they’ve experienced it on first hand more or less
  • the cost (time/money) of developing will become more transparent; effort VS result becomes more real.
    For me, I’ve learned more on how to value my own time and think more effective on how to get most value out of it
  • communication skills will improve; maybe not in person, but thinking about branding and triggering people to use your product can be hard and will only get better when you practice these skills

So, stop delaying your cool idea or look into something that you want to create or improve, and just go for it. Think about it (not to long) work out your idea, start building and get a side-project out. Keep the scope small and doable and just start small and I bet that even if it doesn’t result in dollars in your pocket you’ve learned from the experience of running a side-project…

Launch

…and maybe you’ll end up launching a product or service. Something concrete that you shows your skills, proves yourself worthy as more then just a developer and gives you an edge. Who knows, if it tastes like more you’ll be even calling yourself entrepreneur on your twitter profile in the near future 🙂

Feel free to comment to give your take on any advantages of running a side-project as a developer.