HN user

albumdropped

49 karma
Posts2
Comments21
View on HN

Absolutely. Web development with Go and supporting some PHP and Python apps. Tech management understands and values developers. I typically spend less than 30 minutes a day in calls/standup with the rest of my time spent in active development. Most of our developers are remote, including myself. No after-hours availability requirements. How did I get here? Found the job online and applied.

Back end: Go

Front end: Go

Database: Postgres

Proxy+SSL: Caddy

Extremely fast, dead-simple to troubleshoot issues, and no javascript required.

Most users are mobile, so speed and reliability are the priorities. This setup works well and it's simple to notice when there are any issues or any non-2xx responses to any server or database calls.

I feel you. I left $BIGCO a few years ago. Here's what we're doing.

For databases, we seriously considered cockroach, but went with postgres. For source control, we use self-hosted gitlab.

For CI/CD, we use Go and bash exclusively. Our entire back-end/api is Go and we use Go templates on the front-end. Front-end is almost entirely straight html and css. There are handful of front-end javascript http calls if the customer has js enabled, but js is never required.

Auth uses jwt. The Go standard library makes it pretty easy. At $BIGCO, I did use Auth0, but it got very expensive.

We dont really need GraphQL, so that one's a no for us. For service metrics, we capture KPI data server-side and have an admin section/views for the business managers.

Our team is distributed - mostly US, but a few overseas. Slack for comms. Business managers and CTO prioritize support-tickets/feature-requests and they get assigned to developers. No formal sprints; just bundle features together into a release and test it.

There are several projects, but the largest is basically a very large specialized content platform. Many sites that have to be fast with no downtime - so Go, K8s, CockroachDB. We also have some machine learning (that's why we kept the Python). Also a few fun, small Raspberry Pi / GoBot things around the office.

A Tour of Go https://tour.golang.org

Todd McLeod on YouTube https://www.youtube.com/channel/UCElzlyMtkoXaO3kFa5HL0Xw

Go by example https://gobyexample.com/

Go Documentation https://golang.org/doc/

50 Shades of Go: Common Mistakes for New Devs http://devs.cloudimmunity.com/gotchas-and-common-mistakes-in...

Two Free Books http://www.golang-book.com/

Build Web Applications with Go https://github.com/astaxie/build-web-application-with-golang

Not really aimed at beginners, but Francesc Campoy's YouTube channel is really good. Just for Func. https://www.youtube.com/channel/UC_BzFbxG2za3bp5NRRRXJSw

For more advanced topics, anything by Kelsey Hightower. There are several of his conference talks online.

NoSQL is good if you need flexibility in the data you store. So if you wanted to start collecting user's twitter handles, you could easily add that and then stop collecting them anytime. So some records would have twitter handles and some wouldn't. The table structure wouldn't have to change.

Also, MongoDB in particular has a geospatial data index. So if you were using location data and querying by location (e.g. what's nearby a user's location) that's a great feature. Not sure if other NoSQL solutions have that or if just Mongo.

Swag is always good. Stickers are a given.

One conference I attended had a company handing out cards with a puzzle on it (encoded message). Decode the message and email it to them and they tell you to drop by their booth for a free t-shirt. Clever way of collecting email addresses for recruiting and they mention that they're hiring when you get the shirt. They never did spam me via email, so I didn't think it was too intrusive.