Sorry this one came out late , I have been out with the flu all week, feeling much better now, so I will just get in character…
Welcome to you new job at [Software company], we are excited to have you here and can’t wait for you meet everyone. Today, you are going to meet Software Developer, User Experience Analyst, Business Analyst and Project Manager.
Software Developer / Software Engineer (If You’re Fancy)
Software developers are probably the most commonly known of the bunch, these folks turn requirements into code that solves business problems. They love logic, hate distractions and get paid way more money in the US.
There’s a strange rumour that you need to be good at maths to be a developer, but I have rarely used anything as complex as GCSE maths, let alone more complicated.
These people are highly employable for now, who knows with AI.
Front-End
Front-End developers are a particular sect of developers who like to work on the parts of the website or app that you can see and touch. They make the buttons work, make everything connect the way it should and make sure it looks nice enough for you to stare at it all day.
If they were building cars they would be making the steering wheel, the indicator thingy, the dashboard, all the stuff can interact with on the car.
Some common languages they work with include HTML, CSS, React, Angular, JavaScript and I’m sure many more.
Back-End
These guys like to make sure everything works behind the scenes, they make sure that things calculate correctly and that everything you can’t see keeps working.
If they were building a car, they’d be building the electronics and the engine, so you can have a nice, smooth ride.
Some common languages they work in include C#, Python, Java and many more.
Full-Stack
These crazy guys can build the whole car, they can work on the engine, the steering wheel, the windows, the lights, you get it. They can code the front-end, back-end and anything in between.
User Interface / User Experience Analyst
These lovely lot like to understand the psychology of what makes an app or website a joy to use instead of being a horrible, rage-inducing nightmare. They will understand the colours that make you alarmed, like those bright red notifications, they will design workflows that make sense, so you don’t use an app and find it does not act how you expect it to. They love design and intuitive controls.
If building a car, they would be making sure the steering wheel was wheel shaped and that turning left turns the car left, the indicator button was where you expected it to be and that the gear stick or (PRNDL if you’re American) act how you want it to.
Business Analyst
These are a dev’s best friend, or their worst enemy depending on the day. Business Analysts (BAs) go and talk to the people who use your app or website, ask them what they want it to do, turn that into sensible instructions for developers to understand, called requirements.
This often means they are in the firing line and have to talk to scary customers for you, then they find a nicer way to tell you that the customer is really pissed off. This is why they can be a dev’s best friend.
They can be the worst enemy, because they can give you horrible requirements to fulfil, that you have to do right now! This was their plan for getting scary customer man off their back.
If they were building a car, they would be the ones saying “lets add Bluetooth connectivity” or “customers want the engine to be quieter” or “have you considered using round tires? The square ones are too bumpy”.
Project Manager
Another natural frenemy of the software developer, you may be noticing a pattern, but developers and Project Managers are natural enemies, like BAs and software developers, or testers and software developers, or software developers and other Software developers!
But on a more serious note, these guys also take a lot of flak from customers and they keep everything running smoothly, they love a Gantt chart and meeting. Wow! Do they love meetings. Nothing would get done without them, we love you PMs.
If building a car, they would be making sure everything is running on time and explaining to the customer why it isn’t running on time when shit hits the fan.
Software Tester
These hardworking chums are the people we need to make sure that our code comes out squeaky and clean. They make sure that as few bugs get to the customer as possible and make you look good by giving you a chance to fix things before they reach the real world.
Sometimes they may frustrate you, by pointing out all the things you did wrong, but learn to love the feedback, every bug is a learning opportunity.
I can only thing of one language they use called Cypress, I don’t know too much more, you will have to ask one yourself to find out more.
If building a car, they would be the ones crashing it into walls to see if you survive, bumping it to see if it falls apart and driving it round to make sure it actually drives.
IT Support
Be nice to these people, they decide if you get the nice clean laptop or the smelly one dirty Frank used to wipe his nose on before he was fired for being disgusting. They help you when your computer breaks down, they connect you to the internet, they watch you when you’re sleeping…Maybe not that one.
If building a car, they would be the ones get the lights back on in the factory, making sure the production line is fixed before it burns down and calming you down with a soothing tea whilst they do.
Next Week
I hope you enjoyed meeting all your new colleagues, I am sure you’re tired now, next week, we can meet some of the data team such as Data Engineer, Data Scientist, Data Analyst, Product Manager , Business Intelligence Analyst, Database Administrator / Site Reliability Engineer.
Jack’s Picks This Week
In Praise of Amateurism
I enjoyed this piece about working on things because you enjoy them, not just because you can get money from themThe Art of Taking it Slow
Long read, but really interesting. It’s about a bike shop owner who keeps doing bikes his way instead of what’s optimal