I’m a polyglot web developer with a mild obsession for genuinely RESTful architectures, high-performance, pipeline perfection and robust code.
I’m a full-stack hacker, toying around with everything from front-end code to bare-metal C.
“The best hire I’ve ever made”
– Lesley Allan, Radley Yeldar
I live in London, and you can get in touch with me at firstname.lastname@example.org.
As a self-taught developer, I’m well-versed in learning things for myself rapidly, and approaching new problems with passion and tenacity. I don’t like to leave problems unsolved. I firmly believe that the right API design and a well-designed, well-defined, multi-component architecture will beat monoliths and PatternFactories every time.
REST is Best
For me, the REST architectural pattern is the only sensible way to approach modelling the design of boundaries between parts of systems. There’s barely a system on earth that can’t be modelled as a set of limited verbs operating on resources. For 80% of cases, HTTP embodies this philosophy perfectly well1; one of my greatest concerns is that the languages, structures, frameworks and libraries we use within our service boundaries don’t encourage – or, often, even allow – developers to leverage this pattern.
For communications back and forth, I don’t consider the web to be any different from mobile, or any other sphere; from the server or network’s point of view, everything’s just a different output format for a different client. That’s why I wrote Tache.io; to facilitate optimal formats for and delivery to different categories of clients, and alleviate the reinvention of systems and duplications of content and processes.
Development isn’t all about code
Nothing is more important in web development today than being able to work rapidly, with confidence, and get from ideas to deployed code in the minimum time possible. That’s why at
$DAYJOB I’ve spearheaded DevOps changes, working on everything from coding standards and version control to automating server infrastructure rollouts.
This has given me an (even deeper) appreciation for Git as a weapon for building workflows, for tools like Jenkins to help choreograph processes and facilitate testing, and above all for the development of good, useful idioms and norms. Everything from source code directory layouts, conventions for (or, often, instead of) configuration, and documentation that works.
Some of the more important exceptions are realtime & streaming, and authentication/identification.↩