Companies of one is companies which consists of one person.
TLDR:
What is your tech stack?
Why did you choose it?
Do you think your choices had any impact on your success?
Thanks in advance!
linux vm/dedicated (bare metal) server depending on the compute power I need
docker. plain docker. no kubernetes django htmx (the successor to intercoolerjs) postgresql traefik pycharm as my IDE of choice Scaleway, Hetzner, or DigitalOcean for hosting.
However, I now have some enterprise customers who want SSO. I will need to figure out how Keycloak fits in.
No remote storage like s3 No queues/streaming like kafka or rabbitmq (I use postgres for that)
try to check new stuffs, eg deno, nestjs, react, graphql, typescript, oauth2, etc. not worth to include them if it is not necessary, cost vs benefit.
prefer to use standard spec, use extra libraries as few as possible, e.g css variables vs SaaS, websocket vs socketio.
Also avoid npm complexity, except for express js. definitely, no webpack and their friends.
for server admin: systemd for process manager, nginx for reverse proxy/load balancing/cache.
Why? to preserve my brain power and focus. learn as few tech stack as possible, but master them. need to focus on product market fit.
Why: It's the most developed eco-system for front-end development. I also like TypeScript.
Back-End: Rust, Docker, Hashicorp (Terraform, Consul, Nomad, Vault)
Why: Because I use Rust now :) and the backend is an executable running inside a lightweight docker container.
Other: Github, DigitalOcean, Cloudflare
Why: The most developed eco-system again for Git and self-hosted containers. I hate Cloudflare but still didn't have time to explore alternatives.
Dev: Archlinux, i3, NeoVim, Alacritty
Why: By far the most productive development environment. I'm glad I moved from Windows to macOS and then from macOS to Linux.
Front: Vanilla JS (just the littlest bit), Jinja2 templates
Back: Python + Flask, served via Gunicorn
Data: SQLite (mostly reads)
Server: Wrapped in a docker image and deployed on a $5/month VPS with a few other small websites I run. Small and easy to set up development or deployment.
why: it's secure and I know it very well.
impact: yes it allowed me to move quickly, fix bugs efficiently, and keep a large project organized.
What:
Node.js/AWS lambda/DynamoDB/Kinesis for backend
Pytorch/k8s/AWS fargate for Deep learning api
Clingo/Prolog for symbolic AI
React.js/flexbox/sass for frontend
SwiftUI for iOS
Why: each tool is optimal for its use case
Impact: move fast and break things)
its my favorite language and i can express myself very quickly and in a very safe way. Postgres because i like strict schema that ensures data consistency.
scala allows me to work quickly so that is one impact, its also a typesafe language so that is another obvious benefit.
why: keep things as simple as possible
impact: Yes, to an extent, it allowed me to keep my head around the whole system. I don't think the platform you pick is a huge part of your success or failure though.
Backend : Java (Quarkus)
DB : PostgreSQL
Deployed on a VM via docker.
Not that fancy, but they just work.