Back to resources

Identifying the “Right” Problem to Solve

Alignment
Conflict Solving
Collaboration
Strategy

2 December, 2021

Anurag Jain
Anurag Jain

Leadership Role at Fortinet

Anurag Jain, a leader role at Fortinet, speaks about finding a solution when for a project the apparent needs were not the thing to be solved.

Problem

When I worked at a content site, there were several projects my team inherited. Some of these solutions were built by multiple vendors for capturing customer registration data for a coupon or the like, offered by our sponsors. The captured data was then made available to sponsors - not very securely all the time. The vendors used different databases for each of these solutions and not necessarily the same fields.

After my team began working on these projects, the reason for pulling these from the vendors became apparent. The publishing team needed to change the UI on a regular basis, the data captured was not clean and the data transfers were not reliable. To address these issues, my team was releasing code on a weekly basis, which was very tiring, and still was not enough to keep up with business needs. We needed more work from a demoralized team, faster and with more accuracy.

Actions taken

Clearly, the process we inherited was not manageable and was causing challenges to business and engineering teams alike.

With a new problem, we tend to come up with a solution for the immediate issues at hand and we did the same. We started moving faster to keep up with business needs, with a dedicated group of people to work on it, even though each solution was very simple in nature and should not have required that many people on it. I was spending more time communicating on this group of projects than any other project my team was handling.

We needed to fix something, but at that time, with fires all around us, it was hard to notice the bigger issue.

The issue was that there were too many solutions, not standardized, and not built in a structured manner.

Once I realized that I decided to chase the bigger problem of the solution itself, besides the immediate problem of releases. I had a senior engineer join my team to help me redesign these solutions. We came up with a strategy that would move all of these solutions to a standard platform, without giving up the uniqueness of the HTML built by our sponsors.

We made a way to post the forms to a publishing system that would read through the HTML to identify the form fields within it. This system would enforce a few fields for the inner working of the system, but leave everything else for the individual registration form to decide. Besides the required fields, all other data was stored in key-value pairs and an admin tool allowed publishers to manage the fields that are on the form and define the format of files that were to be sent to the sponsors.

The data API layer was built with security in mind and encrypted some data at rest per HIPPA compliance. All form pages posted data over SSL - no choice was left for individual publishers and the file transfers were allowed from central sftp servers and the process for file transfers was standardized.

Once we implemented this solution, the engineering team managed the backend solution and allowed publishers to publish sponsors’ forms via the publishing tool. They could publish a change, review it on the staging server and publish it in real-time.

Publishers no longer had to wait a week for their changes to appear. They had full control of the UI for the forms and with limited restrictions on the field names, they had the flexibility to add form fields important for the sponsors.

By building a new product, my team solved three problems at once. Publishing could make UI changes in close to real-time. Secondly, my team became more motivated once we had a standardized system to work on and with a smaller frequency of releases. Thirdly, using SSL, data encryption and SFTP made the info secure, protecting our customers and establishing our companies credibility.

Lessons learned

  • Anytime you have a problem, it is best to think outside of the box. It is easy to focus on solutions before us, but this often does not empower us to pinpoint the best approach to a problem. It’s best to visualize your end goal and work backward from there, asking yourself how you can reach that finish line.
  • Standardization and structure are best. Once we standardized our data, our team could share and analyze this information more effectively. Our team was more enthusiastic, and it benefited our customers as well.

Discover Plato

Scale your coaching effort for your engineering and product teams
Develop yourself to become a stronger engineering / product leader


Related stories

How to improve engagement and retention in remote engineering teams?

25 October

Mrunal Kapade, an Engineering leader, based in Silicon Valley, shares tips that helped reduce attrition in the remote engineering teams while leading multiple teams from startups to Fortune 500 companies.

Remote
Company Culture
Collaboration
Motivation
Team Processes
Mrunal Kapade

Mrunal Kapade

Director of Engineering at Inspire Energy

How I failed at my startup

14 October

There are nine specific building blocks and functional areas every org/company need to work to launch the product and provide services to customers. How effectively founders tackle them determine the destiny of the company.

Mission / Vision / Charter
Scaling Team
Building A Team
Impact
Strategy
Prioritization
Praveen Cheruvu

Praveen Cheruvu

Senior Software Engineering Manager at Anaplan

How to Organize, Manage, and Grow Your Team

12 July

Vineet Puranik, Senior Engineering Manager at DocuSign, discusses the impact of roadmaps, organization, and proper management for your teams to procure growth.

Managing Expectations
Delegate
Collaboration
Roadmap
Strategy
Vineet Puranik

Vineet Puranik

Senior Engineering Manager at DocuSign

(Re)Organizing Your Teams Using Domain-Driven Design

12 July

A proposal for how to create an org structure that will deliver software systems that you want, not ones you get stuck with.

Alignment
Architecture
Scaling Team
Building A Team
Internal Communication
Reorganization
Ram Singh

Ram Singh

CTO at REAL Engagement & Loyalty

How to Navigate Your Manager Role at a New Company

1 July

Saikrishna Desaraju, Engineering Manager at Marks & Spencer, draws from his personal experience to advise new managers on thriving in their roles.

Managing Up
Managing Expectations
Leadership
Collaboration
New Manager Of Manager
Changing Company
Saikrishna Desaraju

Saikrishna Desaraju

Engineering Manager at Deliveroo