loading...
Cover image for Increasing the Bus Factor on Frontend

Increasing the Bus Factor on Frontend

steffenpedersen profile image Steffen Pedersen ・3 min read

ℹ️ This is an article, I wrote last year on Medium.

Right now, as I am writing this, I am the only frontend developer on my team. This means that I am unofficially responsible for all frontend and it also means, that it is not tested very well. It may sound livable, but it can be dangerous in the long run if one team member works with a specific area.

It has been like this since another frontend developer got a new job. He was by the way also a senior developer. Now all frontend issues has my name on it, and that is really not the best way of managing the work of a team. What if I also get a new job? Then the team is in a very bad situation.

Normally, this is called the bus factor. It is the number of people in your team who can put your project in a bad situation if they get hit by a bus. Our bus factor on the frontend and the style guide is about 1.25. It is obviously a weird number. Of course, there can’t be 0.25 people. What I mean is, that I know most about frontend and the style guide, but there are a few team members who have looked into the project. The style guide is by the way a project where all frontend is being defined, and where CSS and JS is being outputted from.

I have been frustrated that there hasn't been much help or discussion about our front end. With that in mind, I chose to write an email to our team. I wrote it so I was sure to get it properly formulated.

Hi guys,

I think we should have a talk about the style guide.

Since X said goodbye, I have been alone with frontend development and the style guide. If I get hit by a bus, the team are missing knowledge on this specific area. We can easily continue this way, but I don’t think it’s good for our team, my role in the team or my further development.

I think a solution would be pair programming and more in-depth testing. It might also help if the style guide is going to be a part of the main project. Then it would not be an alienated project. That is maybe for an other discussion.

It is not like the style guide is a whole different world. If you know HTML, SCSS, ES2015 and the architecture ITCSS and naming convention BEM — then you know the most essential.

Knowledge sharing is important, especially when that knowledge depends on one person.

Think about it and we will have a talk soon.

Steffen 😀

We talked about the topic at our Sprint Retrospective. Here we defined some action points, which is something that we can improve on in the following sprint. In this case, it was more pair programming and a presentation of the style guide. The other team members would also do more thorough code reviews. I am also trying to make even more documentation on frontend development. I am right now preparing a workshop on frontend and the style guide.

I would love to hear if you have been in a similar situation. Have you also been alone with a certain part of a project?

Thank you for your time!

If you liked this, then please ❤️ and follow me on Twitter.

Posted on May 17 '19 by:

steffenpedersen profile

Steffen Pedersen

@steffenpedersen

I'm a developer with a love for the open-source community 💻

Discussion

markdown guide
 

Hey Steffen, I was in a similar situation a few months ago.

I was in a team with 20 devs, 3 front end developers of which I was the only one versed on recent technologies like React, Angular, ES6+, CSS3, etc.

The rest of the team were people working in Java who kind of understood TS, some basic CSS and picked up Angular without a lot of effort. The problem was that they were not aware of how to measure or optimize the performance of websites on mobile devices, and were reluctant to use React.

The HR people were actively looking for Senior Front Developers, Senior, meaning someone with hands on experience on the technologies listed above.

On the mean time, I focused on getting the team up to speed with modern ES6, FP and a better understanding of what the Front End is nowadays.

What I found was that the team was interested but they just did not know how nor where to start. We did Lunch and Learn meetings for a month, it was not enough time, but eventually some devs joined the team.

 

Thank you for your comment 😃

Your story sounds almost exactly like mine. I wrote this article last year. A few months after, I had a total break down. Today, we have a much different environment in my team. We are much more open, and everybody is helping everybody. What really helped was being open to each other. I even went directly to my boss. I said that something had to happen. I can also recommend pair programming. I actually have an extra set of keyboard and mouse on my desk connected to my computer. People can just come up to me and work 😃

By the way, we also have Lunch and Learn. We just call it Talent Talks. We sometimes have Beer and Learn - even though people are just drinking sodas 🤓

 

This sounds like a hiring problem more than a technical challenge.

It's not reasonable for you to have to push Backend Developers to become Full-Stack developers, but that may be your only option unless you can get your management to replace the Frontend developer who left.

Another option for management is to hire a beginning Frontend developer instead of an experienced developer. I see this as preferable to converting a Backend developer, since a beginner can learn your exact stack without other team commitments to steal their time.

 

The amount of frontend related issues goes up and down. We're kinda unique on that point 😅 But I get your point. Thank you for your comment.