Case Study:

Increasing productivity by collaborating with a remote java development team

Java-based enterprise solution home page
Java
Java
Angluar
Angluar
React
React
The challenge
Assemble a team of Java development experts to complement the client’s IT teams, specifically for Java development efforts; keep productivity and efficiency at sustainable and satisfactory levels
The Solution
Gradually bring more Java development experts and have smaller teams under one goal; maintain Agile methodologies and practices
The Results
Greatly increased productivity and efficiency; the teams have so far developed over 60 Java-based releases; full transparency in communication; high developer retention; the developers do not change mid-release

Enterprise Java development case study - introduction

Our client, a US retail home improvement leader and Fortune 100 company, was looking to expand their existing IT department and bring in more Java development experts. They would develop new applications and enhance their online products. With more than three hundred home improvement stores in fourteen states, the client already had an established IT department that supported their infrastructure. Still, new projects demanded an increase in the workforce. However, due to the local labor market landscape, frequent job-hopping was the norm, especially among the mid to senior level IT professionals. Because of this situation, the client saw severe and persistent productivity drops, rising training costs, and high replacement costs. These challenges were
impacting the client’s profits and were severely reducing their returns. Unable to influence the sentiment of the labor market, the client engaged in
discussions with a remote software development company – they wanted to find a way to expand their IT team and overcome the issue of
employee retention.
 

Before approaching Shinetech in 2014, the client had already been using the services of a traditional development team. At that time, the client
became increasingly disappointed with their traditional outsourcing approach based on the waterfall methodology. The client needed to spend the
same amount of management as well as development efforts but saw no actual results. It was imperative to change to a modern, self-
management remote team – something we at Shinetech specialize in. Also, having seen the practices our experts followed when working with
IKANO (IKEA’s sister company), the client’s IS Director was very comfortable with setting up a trial period and further discussing our cooperation.

Project approach

At first, we assembled a four-person technical team – three Java development experts and one QA. The client started their one-week free trial with this team. After initially observing what our experts could do, the client initiated the vendor assessment process, which lasted another six weeks. During this process, which consisted of tracking and measuring daily practices, Shinetech experts produced high-quality code and features. Several factors influenced the client’s decision to choose Shinetech as their go-to vendor – high-quality deliverables, adaptable practices, and technical expertise, among others. After this assessment process, Shinetech became the client’s software development partner.

The team then gradually grew to 10 people, so in order to retain high-
level productivity and to have the workflow run smoothly, we
introduced numerous Agile practices, such as:

  • Kanban in Jira – a visual work management system to make work transparent and to facilitate the exchange of information among team members.
  • Standup Meeting – efficient short daily sessions that focus on sharing work updates, discussing challenges and coming up with a way to overcome these challenges.
  • Pomodoro Technique – our developers began following this personal time management approach so as to prioritize the tasks and have the most substantial work impact.
  • Frequent code reviews – to increase code quality and to understand various parts of the system.
  • Retrospective meetings – done after every development sprint, these meetings have a purpose of revealing and eradicating iteration flaws noticed in the sprint. In turn, we saw a massive efficiency boost after each session.
Java enterprise shopping cart solution
Java enterprise delivery solution

The quality of our delivery also showed how well Shinetech experts understood the core values of the client’s products. It also showed how much
attention we paid to code quality, design patterns, and automation. The client was delighted with the high delivery standards of our software and
our methods. They agreed to further enlarge the team – from 10 people to a team of over 30 team members. The team had dedicated BAs, QAs, full-stack
developers, frontend and backend developers, and DevOps experts. The Shinetech team was slowly becoming incorporated within
the client’s in-house IT team. We continued to set up frequent onsite trips for further tech training and discussing new requirements.

The bigger the team – the bigger the challenges

Even though we had all the Java technical expertise (you can see our full Java tech stack here), we encountered numerous management challenges we needed to address. With such team enlargement, some of the amazing Agile practices that apply to smaller teams were very hard to run 30 people. Other methods became inefficient while the rest took a long time to implement (just imagine having a Standup meeting with 30 people!)

Therefore, we set out to solve the issue together with the client. We organized our plan of action in four steps.

Binguo Yang made many visits to the client headquarters throughout our long working relationship.
  • The first step was to split the big Java team to 5 small teams, and each team had 5 – 6 members.
  • Second – make sure each small team was fully functional and more focused on an individual product.
  • Third, introduce the Scaled Agile Framework (or SAFe). This framework was essential in the sense that it allowed large teams to remain agile: all small teams were entirely in sync with each other and working towards a common goal. To illustrate this team synchronization: when the tools design team needs material specifications, the eCommerce team helps by introducing different materials and building the interface for them.
  • Fourth, set up a permanent team onsite that operates from Wisconsin offices, at the client’s HQ location – a BA, a tech lead, and a team lead. This step helped with daily communication and information exchange between Shinetech teams and the client.
After introducing these changes, we noticed any immediate boost with team members. Also, each developer was able to get more in-depth business knowledge by focusing on one
product – we were able to streamline the learning process for all members. Consequently, each development release was increasingly more
focused on the values the product brought to the client. Being able to receive proper technical knowledge and gain a deep understanding of
the client’s business was a prerequisite for professional growth, and our developers were now ready to get promoted from intermediate to senior
developer positions.

The results

After overcoming the organizational challenges that occurred when the Java team began to expand, the developers have been able to grow and
obtain specific in-depth knowledge. Professional growth has resulted in
building great releases, which, in turn, landed new promotions for the
developers. By becoming promoted, the team received the necessary
morale boosts which have propelled them to learn more about the
client’s business logic and to make an effort to further contribute to
the project.
In order to see the productivity increase further, we first needed
to create an environment where each team member’s effort and work
were appreciated. That is why we kept the teams small and agile. This
way, the team members were able to progress in their positions, get
promoted, and take on more responsibilities.
Such a well-coordinated team delivered over 60 releases to date, some of which are:
  • Main eCommerce website,
  • Partners website,
  • Store Supplies Catalog bid product.
  • Online bid product.
  • Online garage design and fence design tools.
This partnership is still active, and we expand it annually. We at
Shinetech Software are happy that we have been able to provide a
stable, reliable, and skillful development team to complement the
client’s organization.

The Java development Team

These people are the reason why the project was completed in only six months. And, to illustrate just how much our clients valued Shinetech’s expertise – out of the original ten people working on this project, four are still working part-time on it, assisting with rolling out new updates and maintaining the system we built together.
Java Experts

+26 experts

To address all the client’s development requirements, Shinetech assembled a large team comprised of many smaller groups.

Resource Management System

At Shinetech, our experts are just as valued as our clients, and that’s why we do our best to bring them closer together and establish a strong collaboration. That is why we’d like you to meet our dedicated team of experts that closely collaborated with our clients, 1eEurope, to produce the best software solutions necessary in just six months. How did they do it? Read on!
.NET Enterprise interface preview

Need help with Java development? Contact us!

Please fill require field.
Please fill require field.
Please fill a valid Email.
Please fill require field.
Please fill require field.