I’ve tended to go back & forth in my working life between gainful employment as a full time wage slave, and the happy go lucky life of a contractor.
On the one hand, the camaraderie that comes with working in a small team on a project that you’re all passionate about is hard to beat.
On the other hand, the freedom to choose what you do, and how & when you do it - and not to be frustrated by ego trips, politics, and plain old bad judgement… is hard to beat. It’s in my nature to think long-term when coding, and I generally want to do things properly as I know that everyone will reap the benefits over time. This can be tricky if you’re working to short-term deadlines, or for companies that are in constant fire-fighting mode, or who have a dubious commitment to quality.
When contracting, this is bearable, as you know that you’ll be moving on eventually, and someone else will reap the questionable benefits of the decisions that you’re arguing against! It’s not ultimately fulfilling, however - but needs must sometimes, as the rent has to be paid.
When in full-time employment, the knowledge that one won’t be moving on, if combined with a continuing failure to get one’s point across, inevitably leads to great frustration on my part, and rarely ends well.
I’ve been in both of those places multiple times, and since leaving SI (my last full-time job), I have been trying to avoid going there again.
I’ve had a lot of fun working on my own products, but I made a deliberate decision not to put all my eggs in one basket and work on one project of my own to the exclusion of everything else, so I have also been contracting. My recent contract employers have been great, and not at all short-term in their thinking. If I’m honest, though, they have eaten up more time than I originally intended, to the extent that I my own products have been neglected. Since I was viewing my products as the long-term route away from frustration, the fact that I wasn’t working on them much has been a constant (if minor) niggle.
Happily one of my contracts has now mutated into a permanent role, and I’m really pleased to say that I’ve joined Bohemian Coding full time.
I was delighted to be asked, and it is the best sort of job offer to have - from people who you’ve already been working with, on a product that you already know (and who’s code you’ve already delved into!).
For me, it’s also the best sort of job to have - a small, focussed team, with everyone pulling in the same direction on some great products. Pieter and Emanuel have been steering a very sane path with the growth of Sketch, pragmatic in the short term (realising that they can’t do everything at once), but totally committed to engineering quality in the long term, and I’m confident that I’ll be able to add something to the mix.
So what does this mean for Elegant Chaos? Well, I’ll be posting more details on the Elegant Chaos news section, but the bottom line is that I may retire some products, but not all. The deal I’ve worked out with Bohemian does still allow me some time to work on Elegant Chaos stuff, so it won’t all die, and I still have lots of plans.
For now though, my main focus is on the exciting new world of Sketch.