SyncIt: Building the Best Scheduler Tool for our QA Team

Managing a team is a challenge. Especially when you have a variety of projects assigned to a diverse team. Thankfully, a variety of tools exist to help project managers stay organized and do a great job. Over the years, PLUS QA has experimented with several time management and project scheduling tools. Unfortunately, we haven’t been able find a tool that was perfect for our company work flow. It’s been a challenge to find something that is lightweight enough to keep up with a constantly changing project schedule, while remaining robust enough to provide support to our team of 50 people. Existing tools are either designed for shift work, which isn’t quite right for us, or for detailed project management, in which everyone has a different task.

Well, since we couldn’t find the right tool, we decided to build our own: SyncIt!

The perfect tool for our team: a checklist

Organization: our main concern
Sometimes project management tools can have too much data. Our goal was to create a tool that gives us easy access to only the information we need. We didn’t want anyone to have to spend extra time going through projects or clients that weren’t relevant for their workday.

Each project manager needed to have access to their own teams, with their own projects and clients highlighted throughout the tool.

A user friendly tool
Obviously, we wanted to have something attractive and intuitive. Many of the scheduling tools out there lack a great user interface. Knowing that we will have to work with this tool on a daily basis, we put an emphasis on having an enjoyable user interface and experience.

A tracking tool
With our previous tool, we were not able to track hours spent on a project, which is important information for our teams. Thus, it was essential to have time tracking as part of our new tool. We are now able to know how many hours we have spent on a project and how many remaining hours we still have. Thanks to a visual graphic bar, it’s easy to see an overall view of the work that has to be done.

Great overall view
Every week we work on dozens of projects so we created a great master schedule view to facilitate the job for our traffic manager. With this view you can easily see who is available to help on other projects. It’s also easy to see the full list of projects we work on each week.

Simple and fast
We didn’t need something fancy, with a lot of different features that may or may not be used by the whole team. Our goal was to get something simple that works for our teams and works fast!


The building process

We started the process by having a conversation about the pros and cons of our previous program. From there we tried to reimagine how we manage projects and the resources needed to complete them. We wanted to create a tool that was more than just a basic calendar with user schedules, but also was simple and easy to use. What emerged from this brainstorming was the idea of a tool that put the focus on the individual client project and the users and resources needed to complete it.

Our development team then had a whiteboard session and wire framed the layout, handing it over to our design team to flesh out the UI. The challenge here was to create a tool that would match the PLUS QA brand while remaining unique. To do this, we focused on modified colors and typefaces to get a similar but evolved feel from the PLUS QA brand. We worked with orange and yellow colors and to add a bright touch, and we added a new minty green color, which actually ended up being a featured color of SyncIt.

Once the design was set, the dev team created the front-end with the styling framework Materialize, and designed all front-end components in React. Created by Facebook, React is a great front-end library for views that allows for super fast front-end interactivity by the user. On the back-end, we used Rails, which allows for an organized database and interacts well with React.

When it comes to using the tool, we have taken care to make each user interaction as smooth as possible. We created a dashboard for every user to quickly see or access the info they need most often. The dashboard displays only the projects that the user is actively apart of, separating out the master schedule, so the entire team doesn’t experience data overload each time they use the tool. By basing SyncIt on projects, we were able to include useful information like hours tracking all in the same place.


How does it work?

Once you have signed into the tool, you first arrive on the home page dashboard. What you see on the homepage varies based on your job role, but no matter what, we wanted to have the information most vital to your work displayed as quickly as possible. For everyone this includes their own personal schedule, and for PMs, we added Materialize cards for the projects they manage.


As a project manager, once you click on a project, you are taken to the project page which features a weekly view of the project, it’s hours and all the users associated with that project, or the PM. What’s great is that the PM can set the users to those they work with most often, so that testers who work on entirely different projects do not cloud the view. You can easily add hours by clicking on the empty spaces on the calendar, a la Google Calendar. We’ve setup an easy color code for the calendar:

Green: user bookings for the current project
Grey: user bookings on other projects
Empty space: the user is free

This is one area where working with React really helped us build our perfect tool. By thinking in React, we were able to create code that quickly and dynamically populates the calendar view in small chunks at a time. This blog on thinking in React is a great example of how we approached the project calendar view.



Just the beginning

Currently we are testing out SyncIt internally, and what is exciting about developing it in house is that we can continue to add to and customize it as our company grows. Whether we are adapting to changing demands from clients or new technologies and services that we offer as a company, we have the ongoing ability to support and update what we’re hoping turns out to be the best project management tool a QA company could have.