Introduction
Welcome to the first issue of my latest blog series: Behind the Dev!
Behind the Dev is a series that I intend to start working on that gives you an insight into different developers' lives.
Since I first started working in web development, I've always been interested in learning about what different influential, role-model developers are doing. How did they get to be in the position they're in? What's the general day-to-day like? What advice would they give to someone like me?
So, to kick off the very first issue, I asked James Brooks (who works for Laravel) to give us a bit of a behind-the-scenes into his life.
Who would you choose to be in my next issue of Behind the Dev?
Behind the Dev
Can you tell us a bit about yourself?
My name is James Brooks, I'm a software developer at Laravel where I work on improving DevOps productivity with Laravel Forge. I live in Newcastle-Under-Lyme, United Kingdom (not that Newcastle) with my wife, two daughters and our Cocker Spaniel.
How did you first get into web development?
Funnily enough, I was only thinking about this the other day. When I was 7ish, a school friend's dad came into school representing the company he worked for at the time; Soreen. Aside from the free fruit bread, we were also given a disk that had some games on, all in a Soreen theme. One of the games was asteroids and I vividly remember playing it on our home PC in awe. I really wanted to learn how to make games. I got a book on programming (JavaScript) and, being too young to understand it, I copied the code into Notepad and messed around until I understood what it was doing. I didn't realise it at the time, but that was my first experience with web development.
I've worked with many languages doing different things, but I always come back to web development. I love how quickly I can iterate on things!
As a developer, what's your typical day like?
Typically, I'm in the office at 8:30. I open up Slack and GitHub, to see what's been happening whilst I've been sleeping (we're a remote team at Laravel, so things happen throughout the entire day). I also open up HelpScout, which we use for supporting our customers and run through the tickets assigned to me.
It's then a case of working on whatever task we're currently assigned to!
Are there any tools that you use on a daily basis?
There are loads! As PHP developers, I think we're spoilt by the ecosystem that we're in. This is what I currently use day-to-day, but you can see a full list at https://james.brooks.page/uses
- PHPStorm
- Sublime Text
- iTerm2
- TablePlus
- DBngin
- Tinkerwell
- HELO
- Expose
- Ray
- PHPMonitor
- Raycast
- FreeAgent
Is there anything in particular related to development that you enjoy working on the most?
I love iterating on something until it's "right". Many of the features I've worked on at Laravel Forge have grown since we first released them, with the goal of always making them better, simpler and more robust.
If you could go back in time and give younger James Brooks some advice when you were first starting in development, what would it be?
I've always known that I was going to be a software developer, even when I was very young and the industry was still pretty new. I didn't do well in education and my grades proved it. I was told I wouldn't amount to anything, but I think I've proved them wrong and continue to do so each day.
I would tell a younger me not to doubt himself so much (though we all need a bit of self-doubt).
Can you tell us about the Happy Dev podcast that you have?
Absolutely!
Happy Dev is a podcast I have, where I talk to other software developers about mental health in the industry. I'm very fortunate and extremely grateful that the guests I've spoken to have been open about their own struggles with mental health and they've shared how they dealt with and continue to deal with it.
I was recently asked by Polywork to write a blog post for them. I wrote about how the podcast came to be and what I want to achieve with it. You can read that at https://blog.polywork.com/polyworking-my-way-through-grief.
I do plan on recording more episodes soon!
Can you tell us about Checkmango?
Checkmango is a full-stack, A/B testing platform that I'm working on.
In a previous role at an online travel agency, we'd been working on adding online bookings to our websites. We launched the feature with high expectations that we'd be flooded with bookings, but actually, we didn't get a single one. We started iterating on every touchpoint of the feature with no real understanding of whether the changes we made were having any impact on the conversion rates. It wasn't long before we found out about Optimizely and started A/B testing our changes. It's a great platform, but it is very costly for smaller companies like ourselves. In the end, we started using Google Optimize and making frontend changes only.
With Checkmango, I'm hoping to fill the gap in the market of companies who want to do A/B testing but don't have the budget that bigger companies have. It's an interesting problem to solve!
We're not currently ready for primetime, but you can subscribe to the mailing list to learn when it's publicly available.
Do you have any hobbies outside of web development?
For my 30th, my wife's family bought me a leather crafting kit. Since then I've been making lots of wallets, card sleeves, keyrings and fidget coins. The amount of wallets in my office looks very suspicious, but they've all been made by me! I find it really therapeutic when I'm hand stitching or cutting leather.
Before COVID, I used to swim and play squash almost every week - I need to get back into that again!
I also have a 3D printer, so I've been modelling and printing some bits to fix things that have broken or improve my life at home and the office!