Recap
Software Engineering Entrepreneurship » Issue 2 » Resilient people and systems
Morgan Wowk ・ Feb 5
Invest big now and save when it matters most
Technology can be your greatest ally or your greatest threat.
Growing your company fast in the future doesn't equate to working fast now. If you're willing to settle on the technology you invest in today then you have to understand that technology will demand your attention again in the future. Investing in a limited foundation early means the growth of your company in its most critical time of growth will stall significantly.
Let's paint a scenario.
January 2024 💡
I'm going to build a mobile app. I'll develop it entirely on my Windows machine. After each change I will commit my code to git,
ssh
into a Digital Ocean droplet and then pull the latestmain
branch. If I work hard enough I can make this app in a couple months, get it out there and start getting my first users.
April 2024 (3 months later) 📈
This is awesome. I now have 60 installs of my app, a few 5 star reviews and a couple 2 stars I am working on addressing.
June 2024 (2 months later) 😨
We have 300 installs. However, users are complaining about page loads up to 60 seconds. I now have more negative reviews than positive. I got a new laptop last month and it's going to take me a couple weeks to get everything working again on my machine. I'm afraid of losing all my users!
July 2024 (1 month later) 😭
I've received advice to invest in a larger server, implement rate limiting and switch to AWS or Google Cloud for advanced security controls to prevent attacks. I'm afraid all of this is going to take several months and I'll need to worry about transferring all my existing data. I've lost over half my users. This is a nightmare.
Give it time. Put in the time.
Serious about your dream to start a company? Don't rush it. Investing your time and money in a smart technology stack can be scary when you're only in a seed stage. Yet, I will guarantee that if you're confident in your ability to learn new tech. then making this investment will only set you up for success when it's time to go-to-market and grow fast. Launch your product and let it thrive.
Rinse-and-repeat mentality. Fail-fast always.
Throughout your journey you should always be prepared to go further, faster. In business in general you have to let innovation fuel your growth. Whether an idea has failed entirely or you're looking publish your nth
new app, you should have a rinse-and-repeat mentality the whole way through.
The best case scenario is that every piece of a system your app depends on (servers, databases, permissions, pipelines, etc.) can be recreated faster the second time around. Always track your steps (document) and find a balance of automating tasks.
Concrete advice
- Think about developing your company in years rather than months.
- Embrace big infrastructure for your small startup.
- Let your tech. stack solve common problems (e.g. SSL, firewalls, rate limiting, etc.) for you.
- Build a prototype / sample app using big infrastructure.
- Be obsessed with tracking your steps.
- If you can anticipate repeating a task again in the future, leverage documentation or automation to save time.
- Imagine hiring team members to do the jobs you're doing. Make your actions reproducible and your responsibilities transferable.
Top comments (3)
Thanks for this series! I’ve got an app I’m working on now (close to release) and all of this makes a lot of sense!
Wow thanks for commenting @tonyzupancic . It's really exciting to hear from you and know that this material resonates with your own experience.
May I ask how you came across my article? I have only recently started on Dev Community and am interested in how you came across my new content.
That's really exciting as well. Congrats on getting to this stage where you are close to release!
Was just scrolling on the app and it came up! Seemed super relevant to what I’m doing; so figured I’d check it out!
Keep up the good work!