Gather feedback from your
teammates and from your clients,
where and whenever you can.
Get a CAB (customer advisory board).
We love ours!
A couple of your clients you trust,
that are honest with you about your
We meet our CAB on a regular basis
to do interviews, card sorting, brain
storms and other exercises.
This helps us steer our product in the
right direction, and helps us solve
the right problems.
User testing is also very important.
This one obviously went wrong, but
helped us a ton!
This is Big Bertha. She’s a huge Excel
sheet, tracking every mistake. And
she won’t forget!
She keeps you from getting used to
the imperfections in your product.
After we’ve thought long and hard about
the features and their specifications, we
actually implement the thing.
We do this using various techniques and
A lot of freedom is afforded to a Darwinian. We hire
people because they’re talented and smart, so we
trust them to do the right thing.
Roles aren’t as strictly defined as in ‘normal’
companies: for example, developers can design
and get some feedback on it from Miet, then we can
potentially use some of those ideas.
Spitballing is our informal way of brainstorming.
Anything goes, nothing is off limits. Everyone in our
team has pronounced opinions, which is important
when building a product.
We hire people not based on what technology they
use, but how competent they are.
It’s important to work with technology you love (and
hopefully use in your own free time) - it increases
developer happiness and productivity
Replacing Symfony (old codebase)
Used for all backend purposes:
- Serving the app
Easy to get up & running for new teammembers
However, a little annoying due to file syncing for
Solution: use PHP simple server (Laravel Artisan)
Our app is built with AngularJS, using both in-house
components and open-source projects
Eventual goal: native app feel
At Darwin, we really believe in the Web and its
strenghts. We’re excited to see what the future holds
Because we have a pretty complicated codebase,
Grunt tasks didn’t quite cover all use cases for us
Switching to Gulp had several advantages:
- Developer productivity
- Being able to roll our own plugins easily
Code reviews are necessary for cross-pollination,
because our team is really small (bus factor)
Issue tracking: both actual issues and a ‘diary’
Not only used for team communication
App activity is logged on our main channel
Makes developers happy to see the app is being
used in realtime
Errors are also logged: easy to respond quicky
Sometimes, it’s hard to maintain a good balance
between an MVP and a clean codebase
You need to believe in yourself and in your team; if
you can’t fix it now, you’ll get around to it later
The app will keep running, even though you know
the code isn’t 100% clean
It’s wonderful to build your own
product and shape your company
culture with so much freedom.
But it comes with great
That’s why our boss gives us
every chance to get better at our
jobs, and helps us accomplish the
things we want.
Every Friday afternoon, we get the
chance to experiment with new
things — to plug out and learn!
We all get €500 per month to spend on
conferences, books, a mentor and other
For example Mathias Bynens, Patrick
Dubois, people from madewithlove and
Little Miss Robot coach us to do better
We iterate on our processes, company
culture and ideas every day — to build a
better product, to become better at our