Live data from Hacker News

The architecture behind a one-person tech startup

anthonynsimon.com

191–200 of 334 posts

Re: The architecture behind a one-person tech startup

#191
post #53

Earlier quoted context omitted.

For the lazy: From https://www.nomadproject.io/docs/nomad-vs-kubernetes > Kubernetes aims to provide all the features needed to run Docker-based applications including cluster management, scheduling, service discovery, monitoring, secrets management and more. Nomad only aims to focus on cluster management and scheduling and is designed with the Unix philosophy of having a small scope while composing with tools like […

Like all of Hashicorp's tools, they are more complicated and error-prone than they first appear, because they stuff too much functionality in one binary. But it does let you implement one piece at a time, so you can make incremental improvements as you need them.

What do you think is "too much functionality in one binary"? With Nomad I feel like the opposite is true: Nomad is just a workload scheduler. If I need service discovery I can add Consul, if I need secrets management I can add vault. Honestly curious by what you meant exactly and how Kubernetes does it better / easier.

Re: The architecture behind a one-person tech startup

#192
post #165
post #12

Earlier quoted context omitted.

Document everything in excruciating detail - I go so far as to record all the commands I run; and when complete o destroy the machine and start again (or use a separate system) and verify that I accurately recorded every step. You can add additional text about why you did certain things - and then store the data in a wiki or checked into git or similar so you can find it when you need it.

What is your system for keeping all of these notes. Do you just have a git repo for everything?

I do same and keep everything in Evernote organized in subfolders and tagged. Quick to find and helps 100% when it's time to rebuild/setup a server.

Re: The architecture behind a one-person tech startup

#194

Great writeup. How do you handle database migrations when using an otherwise automated CI/CD flow with gradual deployment?

You could probably do something like (for django): python manage.py migrate on pod startup. If there are no changes, it'll do nothing. If there are changes, it'll do the migration.

Yeah, it's basically this. I'm running this as an initContainer for my K8s-based deployments. Took me a bit to get everything going, but my stack is pretty much similar to OP's article, although not quite as advanced in the automated-deployment of containers and monitoring. I'm not at a position where usage needs heavy monitoring because I'm still in the pre-launch phase of things and I'm using this side project to learn stuff I've yet to get experience with at multiple companies.

Re: The architecture behind a one-person tech startup

#195
post #12

How do you start learning this breadth of software engineering? I consider myself good in the python / django space, but where do I start with learning these infrastructure technologies? I find that I use them once or twice periodically, and then don't touch them for so long, so I forget much of what I have learned.

Document everything in excruciating detail - I go so far as to record all the commands I run; and when complete o destroy the machine and start again (or use a separate system) and verify that I accurately recorded every step. You can add additional text about why you did certain things - and then store the data in a wiki or checked into git or similar so you can find it when you need it.

That's all great advice. What I find though is I don't do it enough for it not to change under me. Example:

1. Did a project on digital ocean, just ubuntu and node 2. Year later, Did a project using meteor, spent way too much time trying to get it all install with Vagrant (so all info from 1 was not useful) 3. Year later, Changed meteor setup to use docker ... so had to learn docker (so all info from 2 was not useful) 4. 2 Years later, Tried to do something with AWS lambda (so all info from 3 was not useful) 5. 1 Year later, Tried something with Apollo (so info from 4 was not useful)

And to be honest, none of the projects' various needs are all that different. I feel like one "good" solution could have, should have, should now exist ... but I haven't found it.

I guess I kind of feel like people who learned Rails back in the day found it met all their needs and they were able to do 50 projects on it. What is that thing today that if I learn today won't be out of date in 1-2yrs?

Re: The architecture behind a one-person tech startup

#196
post #164

Good article. My comment might be off topic in which case, please ignore. If you have a one-person SaaS company, how do you get past customers’ resistance to a single point of failure, namely you? Do you pretend you’re not just one person? Do you only have customers who could handle losing the service when you, say, run away to meditate on the mountaintop? (Or get run over by a beer truck, or whatever.) Is there some…

I run a b2b saas that is used daily by some fortune500s. I have been going through rigorous vetting processes but have only once been asked about this. I lied and told them it is no problem. I usually pretend my company is larger than it is (me).

It gives me a headache now and then, and am now in the process to get someone else onboard.

Re: The architecture behind a one-person tech startup

#197

I am also a one-man SaaS (though not a successful one). The following tends to be my stack (on Google Cloud, if you will): - Cloud Run (serverless containers) - Cloud SQL (via proxy) - Cloud Monitoring & Logging (formerly Stackdriver) - Compute Engine (if necessary, e.g. websockets) - Cloud Build for GitOps (deploy on push) It's clean and simple (to me). Billing is in one place, nicely separated by projects. Monitori…

Are you happy with Cloud Monitoring?

I ended up moving away from it.

I find the UI to be too slow for the purpose it serves. I'm fine with a slow-ish app sometimes but not when I have to use it often and during incidents.

I also had a few instances over the course of several years where policies seemed to have transparently broke because a system metric name changed. It's possible the issues were of my doing but I don't think they were.

Lastly Monitoring, Tracing and Error Reporting are too disjointed. I wanted a solution that created a more holistic view of what's going on.

Re: The architecture behind a one-person tech startup

#198
post #29

Earlier quoted context omitted.

Do you mean taking a company public without any co-founders and employees, or starting originally with none, then later taking some on? If the latter, I would think Dropbox would count, since at least originally it was a single founder.

I mean IPO’d with one employee - the founder

I suspect IPO would be impossible with one 'person'. You'd have other people on payroll: Lawyers and accountants at the very least. If you're paying millions of dollars to professionals anyway at a certain point it would more sense to hire the people directly, right?

Re: The architecture behind a one-person tech startup

#199
One person forum platform setup:

-Inmotion shared hosting (some $10/mo fixed)

-PHP (codeigniter framework) with MySQL

Not very proud in the age of Cloud, but I can’t deal with all the complexities. Command line scares me (which seems to be the requirement these days for any development). Now I have a simple ftp folder mapped directly in VS Code.

Post reply on HN