The Scaling Solopreneur – Work Smarter, Not Harder
Who is Solopreneur?
As it is Content Writing tradition, every blog post must start with a definition. It is not always a cheap SEO trick. And I believe that in the case of Solopreneur, establishing a ubiquitous language, and single cohesive definition is in order.
So, who is a solopreneur.
An entrepreneur who went on a path of building his business without a co-founder, and, usually, without the additional effort of managing full-time employees. This does not prevent founder from leveraging the expertise of skilled contractors. We never operate in a void.
Solopreneurs are more often bootstrapping their businesses and ventures, even though it's not a requirement. Investors rarely hand over money to solo founders. To be clear, it is rare, but not unheard of.
Solopreneur's goals
Strategic and long-term goals will be different from person to person. But if we were to generalize, you will find those who want to build multiple business and rip benefits of lucrative exit, and those who prefer a slower pace and building a lifestyle business. As with many things, this is a spectrum, and you will have numerous solopreneurs that don't fit neatly into either of these extremes.
On a tactical, short-term goals, this group is much more cohesive. By the nature of being solo and often bootstrapped, solopreneurs value accelerated Go To Market.
The often repeated mantra is Ship It! Social media is full of memes, such as:
If you added favicon to your website, you launched too late!
The speed is not dictated by sloppiness or the toxic Tech Bro culture initiated by Mark Zuckerberg and his “Move Fast and Break Things” motto.
The need for speed comes from real, tangible economic factors. We build software in weeks, validate the idea, if there is a market and audience, we dive deeper and polish the product.
How to ship fast!
To get things done quickly, solopreneurs use every trick in the book to get the job done, even if they have limited resources like time, cash, and sometimes specialized skills.
No Code or Low Code?
Use Low-Code or No-Code platforms. You can ship a full-stack application using platforms like Bubble and Webflow. Even WordPress with a sufficient number of plugins can be used as an online Swiss army knife.
User registration, email flows, eCommerce and even more advanced logic. All within reach of even less tech-savvy founders. Even if these tools are somewhat limited, and often dismissed by “real developers” (sic!) they undeniably deliver value and are responsible for some seriously successful businesses out there.
Use what you know
If you have engineering skills, the easiest way to start a technology start-up as a solopreneur is to use familiar technology.
Back at the beginning of my professional career, PHP 4 was a thing. It was so bad that it made my eyes bleed. But regardless of what I thought about it, it allowed my boss to build great products and a successful business. Today, PHP evolved, with Laravel being in part responsible for its rebirth. So if PHP is what you know, sure, build it your product with PHP.
Likewise, if you left the enterprise 9-5 and all you know is Java, good news! The Java ecosystem is full of fast, rapid development libraries and frameworks. Long gone are the JavaEE and XML days. Modern Java is a joy to code in.
The point is:
- start with familiar,
- build, and
- validate.
Unless you sell software deployed on-premise, nobody will pay any attention to what's the technology behind it.
Accelerate everything
This is probably the most important thing. And the least specific one.
Use tools that move YOU faster. If you love and are very skilled in vanilla CSS, go for it. In this case, libraries like Tailwind might create an additional friction.
Optimize for speed by favouring familiarity. At least at the beginning.
If all you know is jQuery, learning React might not be sensible. However, if you need to use React to get access to a special UI toolkit that will help you go supersonic, then certainly, do learn it!
If you are thinking about React, Vue, or Svelte because it is glorified on Hacker News or Twitter, then I assure you that you will have a bad time.
Try Wide Angle Analytics!
Following Passion
As a true nerd, I like to obsess about hardware, Linux, programming paradigms etc. None of that matters when it comes to successful business. It might be hard at first, especially if you equate lifestyle business with doing fun, nerdy stuff.
There are lucky few, that struck the right balance of geeking out and turning it into a viable business model. But you have to think carefully before betting on this being your case.
At the same time, doing something just for the money, without any sense of accomplishment and fun, will quickly turn your venture into a boring chore. And that might be OK as well. Who are we to judge you if you're out to make money, sell ventures, or just have a blast living life after work?
Fight against the FUD
FUD - Fear, uncertainty, and doubt
If you are embedded in the technology founders environment, you are probably acutely aware of Tech Bro influencers and industry prima donnas.
One of them is the famed David Heinemeier Hansson, commonly referred to as DHH. DHH is known for his contribution to Ruby on Rails and, more importantly, the death of the freemium model. He convinced tech startups to start charging money, rather than betting on ad revenue or acquisitions.
Hey, but why are you picking on DHH, you ask? All these contributions sound solid. DHH is also known for expressing his opinions in a very direct, sometimes vulgar, and dogmatic language. His followers will take his words as a gospel and spread it like wildfire, inflicting damage and pain on the unsuspected.
If you were to believe DHH, you can't be a good software engineer without a Mac, and using Kubernetes automatically turns you into a sucker.
You have to filter through his language and sieve out half-truths, incorrect information and things that didn't work for DHH and his followers because they couldn't make them work.
My way – Your mileage may vary
As a summary, I want to share the way I build my products. This includes Wide Angle Analytics, the web analytics that deliver highly accurate traffic insights without compromising privacy, compliance, and speed.
The tools I use work for me. They might work for you, or they might not. This is not a prescriptive way. Only you, equipped with critical thinking, can decide if this approach could ever make sense in your environment.
The Code
I started with familiar. Coming from an enterprise and banking environment, the JVM is my home. I know enough about Garbage Collection to fix any performance issue when woken up at 3AM. So, that's my go to.
I know enough Java to make greybeards jealous, but I found myself very proficient in Scala and equipped with a few functional programming paradigms I can whip out working, correct software in no time. For me, Scala is the accelerator. Yes, compilation is a tiny bit more time-consuming, but the extra type of safety it offers means I can move fast with a higher degree of confidence.
On the front-end, it is Vue. It required a bit of learning, but the single file components turned out to be an immense help to me. Being able to compartmentalize logic and view, with style isolation, meant I can think about front-end like the old days of Swing desktop widgets.
Get There or Be Square ... or Kube?
How do I ship it? Fast! No scripts, no bash hell, no tens of different approaches. That's what you get from Kubernetes. I can't say enough how much Kubernetes helped me as a solopreneur and speeded up things. If I were to write all the deployment, rollback, and container management logic myself, I would never launch. I attribute my success in shipping and iterating fast in large part to Kubernetes.
Don't believe? Just have a look.
Define Service
, add Deployment
, define replication and rollout policy and by the magic of a single YAML file you have non-disruptive deployment of multi instance replicas.
apiVersion: v1
kind: Service
metadata:
namespace: wideangle
name: events-api
annotations:
konghq.com/protocol: https
spec:
ports:
- protocol: TCP
port: 443
name: https
targetPort: 9001
selector:
app: events-api
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: events-api
namespace: wideangle
labels:
app: events-api
spec:
replicas: 2
strategy:
rollingUpdate:
maxUnavailable: 1
selector:
matchLabels:
app: events-api
template:
metadata:
labels:
app: events-api
annotations:
prometheus.io/scrape: "true"
prometheus.io/port: "9000"
spec:
containers:
- name: events-api
imagePullPolicy: Always
image: <REGISTRY_URL>/library/events-api:latest
Need to deliver some Secrets
and a dash of configuration, No biggie.
apiVersion: v1
kind: ConfigMap
metadata:
name: events-api-app-config
namespace: wideangle
data:
application.conf: |
database {
driver = "org.postgresql.Driver"
url = "jdbc:postgresql://database.wideangle.internal:5432/wideangle?sslmode=verify-full&ssl=true"
user = ${DATABASE_USERNAME}
password = ${DATABASE_PASSWORD}
}
Is Kubernetes hiding a lot of complexity under the hood? Can it get hairy to debug due to that complexity? Hell yeah!
But the sheer amount of goodness and benefits you yield by mastering a simple YAML based manifest cannot be overstated.
Very few technologies will give you such a boost with so little work, while giving you lots of control if you demand it.
Cloud to the rescue of those who need to focus on value add
In my journey, I avoided platforms like Bubble, Netlify, AWS Serverless, etc for a good reason. Actually, reasons.
Firstly, when building a GDPR-compliant solution, you have to do a comprehensive review of data processing by your vendors. Avoiding US-cloud was an imperative. That pretty much removed popular Low/No Code solutions from the running. No AWS, GCP or Azure services qualified, neither.
Additionally, once you leave the VC bubble you will quickly discover that AWS, GCP and Azure are expensive. It is not that cloud is expensive. These vendors are.
We invested in the OVH ecosystem. Once you account for all the hidden fees on AWS such as storage, transfer costs, etc, the total cost of ownership would double if we chose Amazon's services.
Furthermore, we get great customer support, whom we can call for assistance when needed. Managed Kubernetes from OVH means we can focus on delivering software with platform security being handled by specialists in the domain.
Summary
TL;DR? No problem, here is a summary of my preferred stack with brief justification. Your mileage can and will vary.
Technology | Reason |
---|---|
Scala/JVM | Familiarity and Safety |
Vue | Developer Acceleration |
Kubernetes | Deployment Acceleration |
OVH Cloud | Compliance and Price |