anthony galvin

Specialists and generalists: The challenge of building multi-stack engineering experience

When I started off in web development, back in the last century, everyone was a generalist. And generally people didn't really know what they were doing. Which was fine, we made it up as we went along, learning little bits along the way. For most engineers working with the web, the problems weren't that complicated. Tying to get your blink tag to render on various versions of IE and Netscape Navigator. Infuriating for sure. But in the grand scheme of things not that complex.

Fast forward 25 years or so and complexity abounds. Or it can do. Especially for bigger organisations working with bigger teams on (hopefully) bigger problems. In the front-end world new frameworks have supercharged the user experience of many web based products and services. With the added complexity and learning curve that a power tool demands. App development, for a while the home of the 'native' developer also has a plethora of cross-platform and alternative authoring options. These promise (though don't often deliver) a simplified development environment. Away from the front end, contributors to languages such as Grails, Python, GoLang and node.js add more and more features. Promising better, more powerful tools, with an ever improving developer experience (I said promise).

So where does this leave engineering teams and hiring managers. In a medium sized tech company nobody can know the entire architecture and tech stack. At least not with any mastery beyond some boxes on an investor presentation. It takes a team to deliver and in most organisations lots of different skills.

When hiring engineers, I always enjoy learning about how they solve problems that I don't see everyday. I meet a lot of candidates. It's fascinating how peple deploy so many different tools and technologies in such a variety of combinations. Sometimes people describe themselves as "full stack engineers" - which isn't a phrase I love. Full stack invariably means some back-end and some front-end engineering experience. But it doesn't mean the entire stack. No one person at TodayTix Group is able to deliver with mastery across every part of our architecture. We don't expect any one person to do so.

But we still hire full stack engineers. Teams taking on a problem need to be able to solve that problem regardless of the technology or tool that it touches. Which is why we have cross-functional teams with a mix of skills, experience and perspectives. Good engineering practices and process can go a long way regardless of the technology in play. The best full stack engineers (or multi-stack engineers for want of a better label) can bring multiple points of view. Arguably good engineers are generalists. However, complex problems often need someone to focus on a specific area, and in tech companies that specialism can get very, very specific. Which can be good for the organisation and very rewarding for individuals, at least for a while.

When I say a while, I have a specific example in mind. When I joined TodayTix Group I inherited a migration project. The goal was to integrate an acquired business. Moving off a legacy main-frame system that was decades old. Many of the project team had been maintaining this system for decades as well. They were true specialists. Day to day work for the team was a combination of being a care worker, therapist and engineer. But their decades of deep specialism hadn't equipped them or the company for the future. This wasn't the fault of the team. A failure of leadership had stymied technology strategy. A failure of people management and career coaching. Aligned with diverging company and individual priorities. The longer the business stuck with the mainframe the less incentive it had to develop the engineers supporting the system.

In a career as an engineer it makes sense to focus on the challenge at hand, to specialise in technology and tools that benefit you and your team. The path to being an experienced engineer is to build experience. Learning a new framework isn't experience. Solving some real customer or business challenges with it is experience.

But focussing on a single tool without taking the time to check-in on wider developments in your industry and chosen field is limiting. Ideally your manager should be taking some time to help you get this kind of perspective. But that's not always the case - especially if you're not a full time employee, work for yourself or work in a smaller organisation (and unfortunately in some bigger companies too!). If that's the case it's important to find other ways to do this. To have someone who you can chat to about career development, technology changes and what that means for you.

The goal for more experienced engineers is to be a general specialist. Someone with a variety of experience in different technologies, with knowledge of one or two technologies that are current. Like gardening career development is easier if you do it a little and often - not go on a training course once every 10 years.

#work #software #development #career #fullstack #hiring

22/12/2022 permalink

Charging to the Dordogne (and back)

Thursday afternoon and in between the last few work calls of the day we throw in a few bags and the inflatable paddle board then head south. Our first stop is going to be Folkestone, but our goal is to arrive at our gîte for the week near Bergerac, in South West France.

Getting There (Northamptonshire - Folkestone - Chartres - Bergerac)

As well as packing for this trip we have an additional consideration. Charging. This is going to be our longest trip in the Enyaq so far, a 1500 mile round trip. We are setting off with a fully charged battery (or about 270 miles of motorway driving) so the main concern on the trip down to Folkestone from Northamptonshire isn't range, but the usual M25 chaos and rush hour traffic.

Our 'Le Shuttle' isn't until the next morning, with an overnight in the squarely functional Holiday Inn Express near the terminal. But to make sure we can set off with a full battery again in the morning we stop off at Folkestone services for a top-up charge and some dinner. The Ionity fast charger isn't in the main part of the services, but located by the petrol station. We park up, plug-in and tap our Electroverse card and then make our way back along the exit road to the services, which isn't as straightforward as it could be.

It's only 7pm when we get there, but already most of the food options have already closed, so there's only a packed McDonalds for dinner. Not quite the culinary start we'd hoped for, but hopefully a contrast with the better things to come.

After a night at the Holiday Inn Express we nip over to the Eurotunnel and manage to get on a slightly earlier shuttle. Before we know it we are on the French autoroute and heading along the rolling toll roads of Normandy.

We are firmly committed to using the Route Anglais, even signing up to a 'blip and go' tag so that we can use the fast lane at the Peage. It's only when we arrive at the first toll gate do we realise that I've stuck the 'dongle' on the wrong side of the car, meaning Emma has to unclip it and wave it at the invisible gatekeeper as we drive up to the barrier!

Our first stop is the Aire de la Baie de Somme, for a quick charge to top up (30 mins and a terrible service station coffee) before heading into Saint-Vallery-sur-Somme for a fantastic lunch, ice-cream and leg stretch. It's a lovely French sea-side town and it's hard to drag ourselves away, but we've got to push on to our overnight stop-off in Chartres.

The toll roads are suitably clear and after a few hours and some more 'dongle waving' we make it to Chartres for late afternoon. There's a street charger that allows 2 hours slow charging just round the corner from our hotel - the slightly decadent Hotel Le Grand Monarque - so we take the free juice before moving the car to the car park and then exploring the old town. The highlight of the evening being the amazing projection mapping show that turns the towering cathedral into a canvas.

The next morning, after a leisurely breakfast, there's the dawning realisation that we've still got a lot of kilometres to cover. It's another day of Ionity charging with a couple of stops, including the slightly sparse Rue Henri Becquerel. Which is just a row of chargers in a car park near the motorway - no toilets or refreshments available. The Saturday traffic isn't great and it takes 6 hours driving and nearly two hours charging to make or to our gîte west of Bergerac. The temperature is in the low 30s which is great for the battery efficiency, but also means we have the aircon cranking the whole day.

750 miles after we set-off from Northamptonshire, we arrive at our home for the week. A little tired, but happy and ready to hit the pool!

Over the next week we don't head too far. Most of the week is spent in the pool, eating cheese or canoeing and paddle boarding along the river.

There's still some pottering about and from time-to-time we do need to top up. This is a little hit and miss. Every little town and village in the Dordogne has a charger, usually in the town square or near the Marie. However, the first time we try and get one to work with our Electroverse card nothing happens. The same is also true with the chargers at the local Leclerc - I did try and get to the bottom of this with someone on the desk at the supermarket, but my GCSE French doesn't run to the intricacies of the different charging networks, so in the end we plug-in the granny gable overnight.

Once we've download the local charging app we manage to get up and running in the car park in Beynac. It's not clear if the problem was with the RFID card, our network or the local provider, but the lesson here is if in doubt also try the local networks own app.

Heading Home (Bergerac - Paris - Calais - Northamptonshire)

The last Saturday in August is not the day to be hitting the French roads. Once we get away from our quiet rural corner and starting heading north it very quickly becomes apparent that the roads are going to be busy. Thanks to the granny cable, we are setting off fully charged, but we still have to top up a couple of times on our way to Paris.

As we pull off the motorway for our first stop, it's clear the service station is at capacity, with people parked on the grass and a queue spilling out of the toilets into the car park. Somehow though there's a spare Ionity available and we can charge up whilst we grab some lunch. By the time we've had something to eat there's a queue of cars waiting to charge. It's a short stop for us, but that's more down to luck than judgement. We push on trying to get to Paris in time to enjoy our evening (with a trip up the Eiffel Tower already booked in). Our 2nd stop is slightly less successful - there's a bit of a queue and we spend half an hour waiting before we can start to charge up. We crawl into Paris and find the entrance to our underground car park.

We squeeze our way into the Q-Park Rivoli Pont Neuf, near Les Halles, and are delighted to discover a bank of empty chargers at the far end of the car park. This wasn't a planned charge, but as we are leaving the car overnight anyway, it's ideal and we plugin and head off to check-in to the Novotel Les Halles. The hotel is in a great spot, in the 'new Les Halles' - much nicer than I remember it being 20 or so years ago. The parking is fairly good value if you're staying at the hotel, and the charging is also reasonably priced.

After a morning wandering round the Louvre, some shopping on the Rue de Rivoli and long lazy lunch at Nelsons we get ready for the final leg of our journey. Fully charged we don't need to stop on the way to Calais.

We arrive a little early and nip up to the Ionity chargers that are located at the Holiday Inn just a few minutes from the Eurotunnel terminal. In hindsight we shouldn't have bothered and should have gone straight to the terminal and charged up there. Due to some unexplained delays all the trains are out of sync and there would have been plenty of time to queue up and top-up at the chargers in the Eurotunnel carpark.

After a couple of hours waiting we make it onto a shuttle and the final part of our 1500 mile journey, heading round the M25 and up the M1 to make it home in a single hit.

Would we do it again?

A 1500 mile road trip is always going to take some time, and having to queue and charge probably did add a little bit of extra time to our overall journey. At most of the charging spots we stopped at we didn't need to queue for more than a few minutes, if at all, and we were travelling on some pretty busy days in the holiday season.

The prevalence of the Ionity chargers certainly makes travelling long distances easier (there's over 100 Ionity locations in France). Overall we spent about £200 on charging £70 on tolls. Driving isn't going to be as time efficient as flying or getting the train, but it does allow you to stop off. We probably wouldn't have had such great visits to Chartres and Paris if we hadn't driven (though we also stopped off in Folkestone, so it's not all gravy). In terms of the environmental impact, flying would release about 700KG of CO2, whilst driving our EV is about 145kg so as well as being more enjoyable it's better for the planet (with all the caveats that driving hundreds of miles for a holiday is never going to be 'good' for the environment).

Would we do another EV road trip through France? Well yes, we are already planning a trip to the Alps at Easter!

#holiday #france #dordogne #cars #charging #ev #electric

19/09/2022 permalink

15 years ago the four of us went boarding together in Norway. There's been other trips, but we never managed to get us all back together on the snow. Until last week.

More grey hair, a little heavier and slower. Four fabulous days away from pandemics, impending war and work. Let's not leave it so long next time!

#snow #norway #boarding #friends

09/03/2022 permalink

Yesterday evening, I finished work, had dinner with my family and then cycled up Alpe d'Huez.

Not the real, physical one, but a simulacra of one in Zwift, the virtual cycling app / game / training tool. I wasn't on my own, there were thousands of other cyclists on the mountain. Well not on the mountain - in their garages, sheds and living rooms.

Over the last few months there's been a lot written / spoken / tweeted about the Metaverse. Especially since the company that makes Facebook (previously also called Facebook) changed it's name to Meta. Of course nobody who regularly uses the Metaverse is calling it "the Metaverse". They are spending time in Roblox. Or playing Minecraft. Or even Second Life (for the retronauts).

This concept of a virtual world where people can interact in a 3D way has been around for some time. I remember working on virtual cafe for Nescafe, as a graduate at a small web agency all the way back in 1999. It was slow. People still had dial-up. Nobody was really interested in a branded cafe experience. Especially one sponsored by an instant coffee company.

The other day someone asked me if TodayTix Group had a Metaverse strategy. I can imagine the company selling tickets for virtual events. But so much of what the company does is about getting people together at live events. It sounded odd even verbalising it. For me the hours spend in Zwift are a means to an end. An attempt to do some exercise and get a bit less unfit in a fun and convenient way.

So what's next for the Metaverse? Maybe people will spend even more time in these places - the price of hardware will fall and faster internet connections become more ubiquitous.

Will people choose the Meta over reality? With better 3D googles? And more painfully realistic recreations of alpine climbs? I'm not so sure. I can't see people choosing the Meta in-place of reality. If you offered me a week cycling in France or 7-days on a virtual trainer I know which one I'd choose. But as a facilitator of convenience or entertainment there's a place in our connected world for these virtual spaces.

#cycling #metaverse #technology #3d #zwift #work

25/02/2022 permalink

Jan Pieńkowski (1936 - 2022)

Jan Pieńkowski is one of those childrens illustrators or authors who provides a link between my childhood and my childrens childhood. "Haunted House" was one of my favourites, as well as of course Meg and Mog. Someone who had a huge impact on storytelling, illustration and bedtimes!

#links #education #creativity #family

21/02/2022 permalink

It’s a surprisingly warm summers day. We’ve been coming to Mull for more than a decade, but we’ve never had weather like this. It’s a flat calm on Calgary beach and the sun is beating down. The beaches of the west coast of Scotland often look like the Caribbean, but for once they even feel like it!

It’s pretty busy, for the Inner Hebrides, which means not that busy at all. Once I push out from the beach the hubbub slips away and I’m floating over the seaweed below, looking out for fish beneath the gentle waves lazily rolling in. I stand up from my kneeling position. After a few minor wobbles I’m ready to scoot round the northern side of the bay, up towards the old pier. There’s a couple having a picnic who are slightly surprised by my “hello”!

The bottom drops away from this point, and I get a moment of vertigo as I suddenly feel like I’m a long way from shore. I spin the board round and head back in a little before pushing across the bay towards the far side, past a yacht anchored a little way off shore.

As I head back in, the effort starts to hit me, there’s more current here than you might think, and on another day it would be a much riskier enterprise, but with a few minutes of long pulls on the paddle I’m back in the shallows where the girls coming splashing in to meet me.

#paddleboard #sup #scotland #family #islands #family #mull

23/12/2021 permalink

No 10 plans to lower salary level at which graduates start repaying loans

Government believes too many students are racking up debts studying “soft” 3-year university courses in arts and social sciences, and is looking to funnel more 18 year olds towards technical training that is cheaper and will pay a faster economic dividend.

It probably was “soft” compared to some degrees, but I learnt an awful lot of “soft” skills that have proved way more important than the technical skills that I learned on the job.

#links #education #work #creativity #politics

27/09/2021 permalink

MKGeek Night, my local tech meet-up.

My local tech meet-up, nice breadth of topics and a good group of participants - hosted at the always excellent MK Gallery.

#links #tech #geek #meetup #miltonkeynes

20/09/2021 permalink

Home computing pioneer Sir Clive Sinclair dies aged 81

My friend Chris, from over the road, had a ZX Spectrum. It was an absolute marvel and embedded somewhere in my brain the idea that computers were something you could use to create things.

#links #computing #creativity #1980s #childhood #maker

16/09/2021 permalink

How R/GA Is Bringing AI to Brand Naming

As always with agency hype around AI, the article reads better if you ignore the references to AI and just assume this is good old Machine Learning (and quite possible Linear Regression) - but if anyone can pull this off it's probably R/GA. Great to see what Rob and the team have been working on.

#links #ai #branding #machine-learning #creativity

16/09/2021 permalink

The Mentorship Diamond

The idea that one person, your manager, is going to be the oracle on your career is a bit optimistic. Mentees all round!

#links #work #tech #careers #mentoring

16/09/2021 permalink

<< previous next >>