Global networking, access, and security client

Improving dashboard app through customized RSpec training

Icon of a triangle with an exclamation mark in the middle

Challenge

 Reduce app downtime via increased test coverage

Icon of a location marker with five dashes coming out from the top

Outcomes

Upskilled team in testing best-practices, improved codebase quality

Customized training workshop

Situation

Simplifying cloud network management

Our client provides cloud-first networking, access, and security solutions for businesses around the world. Thanks to their easy-to-use cloud technologies, companies can run entire IT networks from a single dashboard. Our client enables organizations to accelerate growth by delivering secure customer experiences that exceed expectations. 

The dashboard is the centralized cloud management platform for all devices and services. It’s a Ruby on Rails app managed by the Senior Software Engineering Manager and his team. They are responsible for ensuring the dashboard is always online, ready to serve a global network of customers.  

Quote from Senior Software Engineering Manager

The biggest benefit of thoughtbot’s RSpec training was handing over a codebase problem and getting a solution. You can only get that with a custom workshop.


Senior Software Engineering Manager

Challenge

Increasing customer engagement and team effectiveness

When customers experienced problems accessing our client’s dashboard, the software engineering team jumped to get the experience back up as quickly as possible. 

However, every time this happened, it meant time away from adding new features and additional value for customers. Whilst exploring the 10+-year-old codebase, the senior team manager realized the platform lacked a strong testing architecture. Better testing would improve code quality, reduce the number of problems, and enable the team to deliver more value to customers.

However, our client’s group of over 100 engineers had varying levels of experience with Rails and Rspec, many having come from other frameworks. The senior team manager flagged the issue to senior management, and our client reached out to several consultancies. They knew of thoughtbot by reputation and chose thoughtbot’s customized and cost-effective RSpec training to upskill the dashboard team.

Solution

A bespoke training workshop based on real code

thoughtbot and our client both understood that the RSpec training would need to be tailored to the codebase and the engineers’ needs. The thoughtbot team began by assessing the app to identify practical training opportunities which would also improve the overall testing architecture. Next, they interviewed the client’s engineers to discover what they wanted to learn and flag learning pain points.

An emergent two-day testing workshop was developed and then delivered iteratively to five cohorts of client engineers. thoughtbot’s team are big fans of feedback, which they collected throughout the training. They used this data to continuously tailor the training to the client team’s needs.

The custom workshop included RSpec basics but focused mainly on real-world areas of the codebase.

Test first development how to

Outcomes

Improving the codebase while mentoring the engineering team

After training with thoughtbot, our client’s engineers are now more confident to apply a “test-first” approach to untested code.

Better tested code means the engineering team will spend less time fixing problems and more time adding value for their customers. As a result, the team finds it incredibly valuable to have developed a shared language around testing.

One of the best and most surprising things for the team has been fostering a growth mindset culture. The client team now encourages their engineers to learn on the job, and no one is afraid to say, “I don’t know how to do this; why don’t we find out?” 

The team is fired up about testing and looks forward to working with thoughtbot in the future.

Quote from Senior Software Engineering Manager

thoughtbot’s trainers used our own code for the training. It was compelling to watch our engineers learning best-practice whilst improving our codebase in real-time.


Senior Software Engineering Manager