I turned my side-project into a startup. I'm Ido Shamun, AMA!

View other answers to this thread
Omotola Shogunle's photo

Thank you Ido Shamun for taking time out to do this. Talking about open source and scaling your architecture.

What should developers consider when it is time to scale, and what are some design decisions we should be making at the beginning, so we can scale effectively.

Secondly, what tips can you give to help developers get people interested in contributing to their open source project?

Ido Shamun's photo

Hey Omotola Shogunle,

Thanks for dedicating your time ๐Ÿ™

  1. The best tip about scalability is don't over-engineer. It's super hard to scale an over-engineered system. Keep everything simple. The second tip is monitoring. You will never know it's time to scale if you don't monitor. Set up proper alerting and dashboards to understand when your system misbehaves. Start changing the architecture slowly when you see that it cannot serve your users well. Don't do premature decisions, they will not help you and might stall you. Message queues such as Redis, Google Pub/Sub, Kafka, Rabbit MQ are the best design pattern for handling scalability I think. Use them wisely and they will be your best friend.

  2. Spread your word. Be active on Twitter, write blogs, make your repo accessible to others by documenting everything. The repo should be inviting and help new devs get on board and contribute. You have to embrace the Developers Relation domain