Things I learned building products

| 4 min read

It's been a long way since I built my first product (ArtsyPoses) around 2007. At that time I had no clue about anything: no SaaS, no fancy buzzwords, no architecture, no valuations, nothing! Life was simple and beautiful; just new I wanted to make a tool to help me draw and I did it! It only took a brief year of coding pretty much daily to release the first version. Suck that up Lean Development! 🤘🏻

Luckily along the years I'd like to think I have learnt a thing or two. Reflecting on all this years I gathered a bunch of stuff that holds true to my heart


  • Your idea is worth shit if you don't build it. Your built product is worth shit if you don't get it to your users.
  • 99% of "urgent" stuff is not urgent.
  • Running a business, no matter how small means A LOT of work, if you have a team get ready to sweat A LOT. If you don't, get ready to pray.
  • You can't be great at everything.
  • If there are no more problems to fix for your users your product might be finished.
  • Shit happens. Focusing on what you can't control is useless.
  • If you neglect your personal life for your business you are stupid. It will come to bite you HARD sooner than later.
  • Those amazing success stories you read are built on top of 1000s of failure stories that end in stress, burnout and broken dreams. You should still try it, but don't forget that.
  • You should not neglect a core area of your product in favor of developing deeply others. Things shall be built evenly and in balance.
  • Success comes after years (many) of grinding and doing the right stuff. Overnight success does not exist besides some exceptions. It is healthier if you don't believe it exists.
  • B2C = tons of potential users = tons more marketing work = tons more noise != more or easier money.
  • Even as a founder you DO have a boss. The investors, your clients or your partners.
  • Seeking exponential growth will eventually absorb your personal life.
  • All entrepreneurs you meet will tell you they are happy and doing great, it is a lie.


  • Communicate with your users SOON and OFTEN.
  • Always be honest, even if you fucked it up. Everyone is more comprehensive than you might think, even companies.
  • If you give your users an amazing experience they will bring more users.
  • Selling what you have already made is the only option. You should never sell something you have yet to create.
  • Your should spend WAY MORE time doing marketing and selling than building.
  • Doing marketing stuff is HARD. Find someone who loves it.
  • Analytics are useless unless you have a clear question to be answered. Dwelling on numbers without a purpose is ego stroking and time lost.
  • Users should be onboarded ASAP even if you have to do it manually.
  • Launching on big sites can be scary, but if you stay humble and honest people will be friendly and give great feedback. You will get the occasional bite, don't sweat it.
  • Launching on ProductHunt has not much impact besides ego stroking and some initial traffic. It is like an entrepreneurs conference. You won't get great feedback besides some pats on your back.
  • The best growth hack is building an amazing experience for your users.


  • Making a successful business is 30% building 70% other stuff.
  • The only thing that matters is value, get obsessed with delivering value.
  • You might need to do stuff manually before you automate it.
  • Most products consist of piping APIs, libraries and data. Their nature does not justify using any specific tech stack. Use whatever you are comfortable with.
  • If you don't understand your user you will build the wrong thing. Get into your users skin. Become your user if possible.
  • You might not even know what you need to build. Better be nimble and iterate over a wrong assumption fast than be slow because you want the perfect plan. No plan survives the contact with the enemy.
  • If you are nimble and fast you have more margin to experiment and fuck it up occasionally.
  • Release fast, release often
  • You can always reduce the scope of something you are working on to deliver faster.
  • You should be OBSESSED with reducing the scope of what you are building.
  • Technical debt WILL eventually slow you down to a stop, so you better pay it often.
  • Fixing bugs as soon as you detect them pays off even if you have to stop working on new features.
  • Having an exception tracking system correctly setup and making sure of keeping it clean will pay off big time for users and the team.
  • You will fail to estimate when stuff will be ready 100% of times. Sometimes by a huge margin.
  • Experiment with shinny tech and new stuff outside of your product.Don't play with your food.
  • Use a 3rd party authentication service, pay for it if necessary.
  • 99% of times is better to have simple and legible code than fast.
  • Great UIX goes a long way and will make your product immediately stand out.
  • It is never a good idea to completely stop and do a full refactor.
  • Testing thoroughly, and even better TDD, will give you speed and peace of mind on the long run if you get proficient at it.
  • Architecture should evolve and be iterated constantly. Don't try to plan the perfect thing from the start.
  • Investing in exploring different options before jumping to building something highly uncertain pays off in the short run. Don't be to eagger to jump into building.
  • You don't always need fancy infra even for complex products.
  • You can go a looong way with very cheap infrastructure or even free.

It's going to be fun to see how these things hold up to the pass of time