I left Return Path where I worked on Context.IO in September just before my daughter was born. Since then, I’ve been spending time at home, doing babby-related things. Now that the family front is more stable, I’m looking to get back into the swing of things with my career.
Hopefully, my new gig will hit some of these concepts: Ruby, social justice, APIs, hypermedia, service oriented architectures, practical design, not moving away from Austin. Only the Austin thing is a deal-breaker, and I don’t expect that I’ll find a place that I like and that likes me that hits all of these. It’s also probably not an exhaustive list, given how human brains seem to work.
If you know of someone I should be talking to or some place I should look into, let me know via email or on Twitter or whatever. I’d greatly appreciate it. Also, if you’re in Austin and just want to grab lunch or something, I, uh, have some time these days. Read on for more details.
I’ve talked about it a bit here. I’ve talked about it a lot on Twitter and in chat rooms and in person. Over the last few years, I’ve had a growing interest in, understanding of and concern for social justice. It started with feminism and has grown more intersectional as I’ve learned more.
This doesn’t mean I’m necessarily looking to work for a company that directly works towards social justice (though that doesn’t sound bad). I’d consider this criterion met if a company is taking active steps to hire and retain employees that don’t all look the same and supports diversity efforts in the community.
Ruby and I think the same way about things. It’s the least-bad programming language I’ve met. I’d like to use it more and I spent more time than I liked at Return Path writing not-Ruby.
This isn’t to say I’m opposed to other languages, especially where they meet a specific design or business need (Go and Rust come to mind most readily). I just… really like Ruby and think it’s a really smart default choice when picking a language for a new project.
SOA, APIs and Hypermedia
First off: I think SOA (or “microservices” if you’re not into the whole brevity thing) is showing itself to be a solid way to meet scaling demands in a cost-effective, maintainable way. The thing is, I don’t think we, as an industry, are really good at services yet. There are some exciting things going on in this area and I can see some powerful stuff coming down the pipeline (especially as this intersects with DevOps).
I have a theory that HTTP APIs are one of the best ways to get your SOA organized. It’s a well-understood, widely-used protocol with tons of library support in any language worth using in production (I don’t know if brainfuck has a solid HTTP library, though). As an industry, we’re really good at making HTTP requests fast, measuring them, optimizing them, etc. And, if you exercise the full range of the spec (all the response codes and headers), it is very expressive. I see this as a point of stability to lean on in an area that we’re still trying to figure out how to do well.
Further, I think that hypermedia has some really strong selling points when it comes to HTTP APIs. The original REST paper addresses problems that are still solved in mostly-inconvenient ways in many HTTP APIs. This is a big topic that I don’t want to get deeply into here. It’s worth mentioning that I feel like there’s some promise, here, but enough about hypermedia hasn’t been widely tested enough to have developed a range of best practices about it.
I’d love to be at a place that was interesting in investigating the above triplet of concepts and pushing the industry forward in this area. I have ideas and opinions and I want to test them in the real world. I could be totally wrong about all or part of the above… and I want to find out.
Ever since I read POODR, I’ve had the growing conviction that good design doesn’t have to cost your project tons of time; that there’s a right amount of thinking and talking about software design that will save you time in the not-so-long term.
Often, people talk about the dichotomy between developers who want to craft a beautiful cathedral and those who want to toss up a rickety prayer tent. I think there’s a middle ground such that you avoid the never-ship “architecture astronaut” but also avoid painting yourself into a corner by getting underwater in technical debt (so many analogies). And I think Sandi Metz was talking about that middle ground in her book.
I’d like to work at a place that has a similar sense to me about what that right amount of thinking and talking is. I don’t know how to describe the amount, exactly, so I’m kind of hoping that this is something that will reveal its self in interviews.
I was born here. I grew up here. My wife did the same. Our parents and siblings live here. It doesn’t snow here. The food is yummy here. I own a house here. The Ruby community in specific and the startup community in general agree with me here. I could go on and on, but I don’t foresee my moving away from Austin without radical changes in my personal situation.
Also, with communication technologies being what they are, I find it sort of silly if a software company can’t figure out how to do remote reasonably well. It’s something my business unit at Return Path decided we wanted to be good at and were then surprised at how easy it was: most of the problems evaporate in the face of any attention at all. Heck, using Slack alone solves a giant chunk of the problems if you use it religiously. Good email culture solves another huge swath.