What even is this? It's an attempt for people to understand what it's like to work with me, what i'm like as a person, what my shortcomings are and how to get the best out of me.
If you think there should be something added or amended here, please feel free to make a PR. I'm not precious about this. If I'm acting incosistently with what I've written here, please raise an issue or talk to me.
To some degree these sorts of frameworks can help at least give people and idea of what motivates people. One of my friends is an occupational psychologist and swears that OCEAN is the only one that has some sort of empirical evidence. Anyway, here's a couple of links to my results using various frameworks:
Myers Briggs: ENFJ
OCEAN: TODO
DISC: TODO
Principles You: Adventurer
Start with Slack, WhatsApp or Signal, if that fails, skip email and go straight to a call/meeting. I like doing meetings in person...but I think I'm getting used to Zoom now too so that's also good.
We're all a bit terrible at feedback, so firstly have a listen to this if you want to learn how to give better feedback; https://fs.blog/knowledge-project-podcast/randall-stutman/. I don't really need to have things introduced to me gently, I'm happy with very direct feedback. Please give me bad news. I can't promise I can do something about it, but if I don't know about it there's absolutely no way I can do anything about it.
I think I'm a bit Bipolar here. If I'm coding or working on a thinking problem - i absolutely love being at home, headphones on and being very uninterrupted. If I'm doing something more creative or collaborative, I love being in a room with other people. I like solving problems on a whiteboard and discussing them.
Let's just get this in straight away - I can be terrifically disorganised at times. But here are some other delightful shortcomings:
- I am not super detailed. We might have discussed something, you can probably assume I have forgotten the details. I am happy to be reminded - If you see me writing something down - this is a good sign, that normally means I'll keep track of it.
- I'm not that good at following a process - and yet I understand the value of those processes. Sprints, Standups, Estimation, retros etc....totally important. I wish I was more able to be disciplined in sticking to them.
- If i'm interested in a thing, I will prioritize that thing above other things. The thing I am interested in my not be in any way as important as the other things. I'm not super proud of this one.
So firstly I like simple things.
In fact I am a HUGE fan of Choosing Boring Technology. I wish I had followed this advice much earlier in my career. Maybe our Startup would not have ๐ฅ. But I digress.
In terms of running teams, I try and figure out what 2 or 3 things will move the needle based on where the business is up to/current working context/size of team etc. As a starting point I'll look to use something from Accelerate which I highly recommend as a book. TLDR version.
One other book that had a huge effect on me when I first started running teams is an old (we're talking 1970s here) classic. Peopleware.
I have a long list of books, come chat to me if you want to know more.
So if you ask me how to build a thing..specifically talking about engineering here, my default position is:
- Choose ONE language (probably a common one like Python, Ruby, Javascript or maybe even Elixir now)**. Something with a good web framework and a good testing framework in any case.
- Choose ONE database (probably Postgres)
- Build a monolith
- Choose some metrics you want to measure to see if the thing you built is working
- Deploy it to Fly.io
- Give it to people to test
You can probably do that in a day or two. Then you can adjust based on real user feedback. I actually do this too. Example Chat for NZ Legislation.
I should add that I'm a huge fan of The Twelve Factor App style of building apps.
**Not everything is a web app and if speed/performance and scalability are important considerations then I would pair one of the above languages with something like Rust or Go.
Also sometimes having skills in a thing is more important than using the latest thing. Once we used Puppet to build servers because we had a Puppet expert. I'm not sure I would do that now, but it was the right decision at the time.
I really love listening to Podcasts (often while doing something else - like washing up or cleaning or ironing or something).
I have a cute family and I love them. Sarah and I have 2 girls; Rose (6) and Maisy (3 1/2).
Climbing, mountains, trail running, camping, skiing and hiking.
TODO: That time I helped cause the GFC or the other time I went on holiday, got involved in nationwide riot, chartered a plane, was in a 7.9 earthquake and nearly died at sea after my girlfriend at the time caught a flesh eating virus. All on the same trip