Continuing our spooky season theme, we’ve got some musings from one of our team, Stephen N, on the best ways to put the frighteners on to a software developer as well as what things have changed which make the job a bit less scary…
What scares me as a software developer?
When a customer says “Please could you do <blah/>, it should be really simple.” Sometimes really simple requests are quick and easy to implement; sometimes they are really hard, and it usually takes a bit of thinking and/or experimentation to find out which it will be. Randall Munroe explains this beautifully in xkcd.com/1425/. The current really hard thing should be simple – “can you save this webpage as a PDF?”.
How to scare a colleague
Every now and again, however well you build a system, you will need to make a manual change to a live database. Maybe something unexpected happened and some data was corrupted, or you just made a mistake. When the time comes to run the commands to fix it, I always like to make sure there is a colleague pairing up. It prevents mistakes, adds confidence that the change is correct, and stops one person from being blamed if it doesn’t work. And if you are the person watching your colleague, it is always hilarious to wait until the delete command has started to run, and then give your colleague a fright by saying “oh, hang on….”.
What doesn’t scare me anymore?
Back in the days before my hair was grey, we’d run websites on physical servers in an office somewhere, connected to another server with a database on it. If something went wrong on one of the servers, or in the networking, then recovering could take hours. Nowadays, resilience is easy to implement. We’ll have a test system which we know is identical to the live system because we built them both using the same infrastructure as code. It’s cheap and easy to have software running on a small farm of servers or containers. If a container fails, or a disk fills up, our cloud provider will delete it and create another one for us, while the other boxes take the load. So if one of our sites goes down nowadays, it’s probably due to a catastrophic failure in cloud infrastructure which will be on the news, ‘Somebody Else’ will fix it, and there’s nothing useful I can do except check all our auto-recovery processes worked as designed.
Need to talk to someone about projects that are making you nervous? Get in contact with us and we can help you navigate them safely.