개발자 1인 회사인 분들, 기술 스택은 어떤걸 쓰시나요?
(news.ycombinator.com)- OVH 클라우드의 큰 서버 하나에서 여러개의 SaaS앱을 운영중
- 하루에 약 6백만개의 캐쉬 안된 리퀘스트를 처리
 - 백엔드는 Django/Python + MySQL + Redis + WebSocket(Pub/sub)
 - 나의 비밀은 OpenResty (Dynamic web platform based on NGINX and LuaJIT)
- Lua 스크립트를 이용하여 복잡한 페이지 캐슁을 처리하고, DDos를 막고, 웹소켓을 처리하고, 장기 실행용 요청들을 오프로딩 처리함
 - 1500 짜리 Lua 코드로 구성된 "가난한 자의 Cloudflare"
 
 - 이 앱들은 Docker 전에 만들어진 것들이라 그냥 프로세스로 실행됨(systemd)
 - 초기엔 uwsgi를 사용했지만, gunicorn 이 훨씬 효율적이어서 이제 완전히 바꿈
 - 나의 SPOF는 DNS임. 나는 DNSMadeEasy와 관계가 좋아서 자동 ban 걱정은 안했는데, 이제 DigiCert가 그들을 인수해버려서 문제
 - 결제는 Stripe 와 Paypal 로 처리. Paypal을 싫어하는 데도 추가한 것은, 언제 Stripe가 경고없이 차단할지 몰라서임
 - 사용자 업로드는 aiohttp Python 서버로 파일을 Wasabi 와 Backblaze로 보내고 nginx에서 캐쉬함. 그래서 클라우드 전송량 요금은 0임
 - 웹소켓 레이어는 약간 불안정. 처음엔 파이썬 웹소켓 asyncio 라이브러리로 모든걸 처리했는데, 어느정도는 동작했지만 나중에 멀티 프로세스로 처리하려고 하자 리소스를 엄청 먹기 시작함
 - 그래서 OpenResty 의 웹소켓을 이용하기로 결정했지만 복잡한 로직을 Lua로 작성하기는 싫었음
- Redis Pub/Sub을 이용해서 메시지를 파이썬 프로세스에 전달하도록 변경
 
 - 하지만 내 서비스 이름은 알려주지 않을 거임(경쟁자가 더 생기는 것은 싫거든!)
 
 - 난 유명하지 않는 옵션을 선택하는 경향이 있는데, 솔로 개발자에게는 생산적이라고 생각
- PostgreSQL + SQLite
 - 메인 언어 Rust
 - 프론트엔드는 htmx + tailwindcss
 - CloudFlare + Vultr 호스팅
 - nginx + nixos + circle ci
 
 - 누군가는 싫어하겠지만 난 Wordpress 를 선택한게 최선이었음
- 포럼은 bbPress
 - 멤버가 포스팅하는 커뮤니티는 buddyPress
 - 뉴스레터는 무지 비싼 SaaS 대신 저렴한 mailster.co 플러그인(Critsend.com 이용)
 - 원하는 대부분의 기능들은 플러그인으로 찾아보면 다 있음 : 검색 가능한 FAQ, Captcha, 광고, 디스코드에 포스팅하기, 사용자 신고 시스템 등등
 - https://rpgplayground.com/ 운영중
 
 - OpenAI랑 경쟁하는 서비스인 https://text-generator.io 를 운영
- 기존엔 GCP에서 쿠버네티스 쓰다가, 이제는 Cloudflare 터널을 통해서 집에서 내 GPU들로 운영함. 이렇게 하면 GPU 가격이 10배 저렴.
 - 입력된 링크나 이미지에서 Tesseract / Unified IO / OFA / Beautiful Soup 등을 통해서 분석하고 이미지/영수증에 대한 답변을 해줌
 - 사이트 자체는 AppEngine에서 Python + Stripe + Firebase UI 로 되어있어서 매주 적은 비용으로 운영중
 
 - Render 에서 호스팅중
- PostgreSQL + Rails + Hotwire
 - Stimulus 와 Turbo Frames를 정말 좋아함
 - UI는 Tailwind 와 Tailwind UI를 사용
 - APM은 https://skylight.io 와 https://sentry.io
 
 - https://allaboutberlin.com 운영중
- DigitalOcean 의 Docker 에서 Craft CMS로 운영중
 - Craft는 워드프레스에서는 만들기 어려운, 사용자 정의 필드가 있는 사용자 정의 게시물 유형을 쉽게 만들수 있음
 - 하지만 워드프레스가 아니기 때문에, 필요한 플러그인이 많지는 않음
 - nginx 로 캐싱 및 많은 것들을 처리함
 
 - 생산적이 되고 싶으면 PETAL을 시도해봐
- Phoenix + Elixir + Tailwind + Alpine.js + LiveView
 
 - Rails + Postgres + Redis + SideKiq
- Herokus 에 호스팅, 에러 추적은 Sentry, 성능 모니터링은 New Relic, 메일은 ㄴend Grid
 - 최근에 Google Analytics를 Plausible 로 교체하고, Ahoy(Rails Middleware) 사용해서 내부에서 심도있는 분석중
 - 고객지원/채팅은 Intercom 사용중인데 Chatwoot로 교체예정
 - Heroku 에서 벗어날 예정인데, 대표적인 대체제인 Render가 아직 자동 페일오버 되는 HA Postgres 옵션이 없음
 - GitHub 마스터 브랜치에 푸시하면 프로덕션에 자동 디플로이.
- 마스터브랜치에 머지는 PR로만 가능하고, Linter(Rubocop) + Tests(Rspec on CircleCI) + 100% 커버리지(codecov.io) 에서 Green 이어야만 가능
 
 - UI는 부트스트랩이고, 자바스크립트로 서버사이드 렌더링 중
- 더 인터랙션이 필요한 UI에 대해서는 Hotwire/Turbo vs. Alpine vs. Stimulus vs. React 고민중
 
 
 - Agtech 플랫폼 개발중
- 백엔드 : Rust, Rocket, sqlx, Postgres, Ansible 약간
 - 프론트엔드 : Rescript + React. Rust/WASM 꽤 많이 사용중인데 이건 실수였음. 되돌리려고 시도중
- 왜 WASM 선택이 실수였는지는 자세히 설명한 댓글이 있음 https://news.ycombinator.com/item?id=32965809
 
 
 
HN에 올라왔던 예전 글들도 참고하세요
2021년 https://news.ycombinator.com/item?id=28299053
2020년 https://news.ycombinator.com/item?id=25465582
2019년 https://news.ycombinator.com/item?id=21024041