Not everyone’s like me. Perhaps nobody’s like me. But when it comes to enjoying programming jobs, and particularly when it comes to enjoying Perl programming jobs, there are two things that are needed to make me happy that I suspect resonate with most other career developers.
The first of those is working with a codebase that doesn’t fight me back. Nietzsche famously wrote:
He who fights with monsters should look to it that he himself does not become a monster. And if you gaze long into an abyss, the abyss also gazes into you.
Earlier in my career I had a real sense of machismo about working with poor quality codebases. The amount of low-hanging fruit that is pickable when you write the first tentative test cases around a 42,000 line CGI script, scaffolding around globals, turning strictures and warnings on for blocks that you can pull out of the main body and so on can give you an exceptional feeling of progress.
But as much fun as it can be to work around and nurse back-to-health antiquated tooling, eventually it grinds, and you start wondering if letting the patient die would be the kindest thing for everyone involved. You find yourself not delivering your best work, because why cast Perl before swine? Hand-crafting releases instead of using dzil, non-automated release processes, and the fear that your changes will blow up parts of the code that aren’t properly tested is exhausting.
One day you decide you don’t want to be working the life-support shift, and you’d rather be working with a Modern, clean, and sane Perl codebase, using best-practice tooling. And you realize it’ll make you happy.
The second thing that makes me happy is working on products that are expanding, and that are growing. To be using my programming skills to work towards building something excellent, rather than working to keep the ship floating.
When you’re working to deliver new, exciting features to customers, as part of a well-thought-through plan to grow the company and team you’re a part of, work is exciting. You know you’re building things that will improve some small (or large) corner of the world, and that your work has some actual meaning, beyond generating the latest batch of TPS reports.
And so it gives me great pleasure to have a role on the books that fits both criteria:
- The codebase is Modern, sane, and clean, and overseen by technical management that absolutely insist on keeping it that way;
- The company and development team are growing, and the new technical products you’ll be working on are an absolutely vital (and consumer-facing) part of that.
If it’s time to move on from your current role, and you’d relish the opportunity to be consistently happy at work, this is the role for you.
PS: A simple commute is also a huge win, and the client is near to a major transport hub in Central London.
This job is no longer officially open, but see below for how to register your interest in roles like this, and be told as if the company reopens hiring.
This image is a derivative work of (sri’s Raptor logo)[https://github.com/kraih/perl-raptor], which was then adapted to a blog post on the Perl Foundation, which I then remixed using some app I found on the app store. License: CC BY-SA 4.0