Adventures of a Full-Stack Developer

James Davies
StreetGroup
Published in
8 min readSep 28, 2021

Introduce yourself! What’s your name & what do you do here?

Hello there, I’m James, but people call me JD, it’s a lot easier when you have someone with the same name on your team! I’m going to share some highlights and thoughts over the last 6 months here, what I’ve learned about the company and how it’s all been. Spoiler alert, it’s been brilliant!

A bit of background on me though, for those that are interested; I’m a huge fan of pop-punk and metal. I used to be found regularly attending gigs and festivals in a pre-pandemic world (I’m sure I’ll get back to that soon). There’s usually some scream-y band being pumped through my headphones, it’s great to get lost in a good album while you’re working. I’m also vegan (it only took me one paragraph to mention it) and try to live as sustainably as I can, it’s super important to me that I get to do my bit, I find it really fulfilling!

Me when I was a lot more social.

What does being a Full Stack Developer mean at Street Group?

So a full stack developer involves both development of the UI and any backend or server related tasks, so perhaps sometimes we’d build something and it would require an API and then an interface to interact with it, a full-stack developer should be able to handle the work that spans across the two areas. I think I must say I do have a soft spot for UI, which I’ll come to more a bit later on, but It’s been great working with Alex (our awesome design and UX extraordinaire) and implementing some great looking components. I think I tend to lean towards that side just because I love the interactivity and seeing things visually come to life!

The usual day to day involves reviewing PR’s, attending occasional meetings and then working through tasks in our current sprint. In keeping with our theme of transparency we always like to keep our tasks up-to-date with our progress or with any hiccups we’ve encountered, we’ll usually then share this in our standups the following day and all the details are there, it’s super handy if people are away so other people can pick up where they left off, a real good unit! It helps with the accountability of the team too which is always great, like the saying —

The whole is greater than the sum of its parts!

New features or fixes will usually then go on staging and our lovely product owner Jamie will give us a hand in testing things out, hopefully catching any last bugs and squashing them before it gets the thumbs up and shipped! Our turnaround time can often be pretty quick, something which has taken a refinement of our processes, but we can adapt and all jump on board if we ever need an extra set of hands.

Have you ever worked in the property industry before?

I’ve not, but it’s an industry most of us touch at some point in our lives whether it be moving or renting and seeing the way street aims to revolutionize the industry was exciting to me initially. On the other side of it, I got to learn more about how estate agents operate behind Spectre and that’s been really interesting, going from knowing nothing at all to a great understanding of how they use our product and the technical aspects to achieve it. We’re all surrounded by people who’ve either worked as agents before or know the industry inside and out as well, so there’s the first-hand experience that feeds into what we do and just so many opportunities to learn more.

Best £1 I ever spent, circling a bit of pavement.

How’s your first six months gone?

Quick. It seems like yesterday when I had my first day and yet here we are! I jumped straight into our anniversaries feature when I started, I think we were about halfway done on it so I managed to put my stamp on something really early on. That was a really fun feature to work on as I could just hit the ground running and dive into the codebase. There was a really big buzz as well around it which was really motivating, like with all our new features, we have a talented bunch of people who know the industry well, so any decisions and roll-outs are going to be perfected as much as they can be.

I’ve done lots of frontend work so far, revamping certain existing areas of the platform and adding some new and exciting features which have gotten a great reaction from the rest of the team. It’s honestly been so inspiring to work with such talented people who not only are great at what they do but care about the product and each other. It really feels like we want the best for each other, everyone is always available to offer a hand or answer a question (however silly it may be). We have had some great discussions either in our technical chapters or the engineering forum, where we can showcase the ‘devvy’ stuff that we’ve all been working on and talk about stuff between the different teams. It’s like a melting pot of knowledge, so I’m eager to learn more in the next six months and beyond. It’s how you grow at the end of the day, it’s good to be challenged with different perspectives, and as someone who’s always worked in tiny dev teams, it’s now great to have so many people to work alongside.

How was onboarding remotely? What should someone expect if they’re considering joining us during lockdown?

I was lucky I managed to head into the office on my first day and meet the team. I was so nervous but I had such a warm welcome from everyone so those nerves soon disappeared. It was really nice to get to know different people in the company, we’d have these little calls to explain what we did to each other and then just have a little chat about anything at all. For someone who’s never worked in a company this size before, it really bridges the gap between departments and makes the whole company feel more tight-knit. It doesn’t feel like there’s over 50+ of us at times because we’re always engaging with each other. I’ve worked at places in the past where it felt like there was a divide between the development team and everyone else, and things got lost in translation when that happened, it’s always better when you’ve got that collaboration going with everyone and we’re on the same page.

What have you been working on? What are you most proud of so far?

Bug fixes are always rewarding I find, just adding a layer of polish and then getting some positive feedback from the CS team. You just know you’re constantly improving the platform for people and making their experience better, and then when you hear the responses, it’s a great feeling.

Settings for property reports, I love how this turned out.

Then there’s the design system implementation which will be slowly rolled out across our new features, aiming to have a consistent style and functionality. We’re really focused on user experience at Spectre going forward and want to make our features as easy and intuitive to use as possible, this will be a gradual process but something that’s been really fun to work on. I also had the chance to help out with property reports which have had a number of us jump on board to get out the door. I was so impressed with how it was all working even at an early stage and we’ve all worked so hard to make it as good as it can be! The response so far has been amazing, it’s nice to have helped out on this and watch it come together!

Have you taken ownership of anything in the last 6 months?

Since coming in I’ve really wanted to take a grasp of the Spectre frontend and try and shape it into something more robust as we slowly start to revamp our UI. As much as I’m full-stack, I have a real passion for beautiful interfaces and watching them come to life and this has been such a great opportunity to take a hold on it and introduce a more formal approach to styling and our component architecture.

I’ve seen so much go wrong with frontend in the past, I feel it’s an area that can easily get neglected and then it turns into a monstrosity with styles being overwritten left and right, and just trying to patch over spaghetti code in javascript land, it gets to the point where it’s so overwhelming that it never gets fixed and people are scared to touch it. We introduced some testing which should help speed up any refactoring processes and just give us more confidence. You have to be careful you don’t back yourself into a corner with UI tests and write ones that are too brittle since things like class names or copy changes could just end up breaking a load of tests and you spend more time fixing than actual work. So there’s a balance and we hope to get more coverage and keep things rock-solid going as we expand the use of these vue components across the platform. We’ve also got more consistency going on how we flesh out our components, certain practices that will just take some of the mental burdens away from ‘where should this go’ or ‘how should this look’ so we can build quicker, especially with re-usability at the forefront.

What’s one thing someone might not know about working here

Improve, improve, improve. We have a really strong focus on trying to get better all the time either as individuals or as a development team. Taking risks and trying new things is the core of how we can build quickly and efficiently and if things don’t work out, we just try something different and recap about why it didn’t work for the future. I think being flexible like that is one of our biggest strengths, we’re constantly seeing how the work is going and any ways we can change things to make it better, but making sure that the developers are happy too, that’s the best way of improving a team from all angles.

As I mentioned earlier, these first 6 months have flown by and I think that has been a testament to the day to day life at Spectre, we move fast and like to build great things! The company culture here is second to none, things may be challenging at times but it never feels like you are just one, it’s the whole team that are eager to push forward, that’s what makes it so gratifying to work here, it definitely makes it easier waking up in the morning!

To find out more about life at Street Group, visit streetgroup.co.uk, our Glassdoor page, or visit our careers site.

--

--