- DOCUMENT CODE
- Visuals provide a common language that allows iOS and Android teams to design efficient code together and promotes understanding of the codebase across teams.
- VISUALIZE NETWORK ARCHITECTURE
- By visualizing software architecture, teams can identify pain points, design new features without costly rework, and communicate effectively with stakeholders.
- MAP TECHNICAL SYSTEMS
- As LivePerson move towards a public cloud transformation, they rely on Lucidchart to create AWS network diagrams that show what services the company uses and how customer data will stay secure.
- MAXIMIZE CUSTOMER SOLUTIONS
- Solutions architects create as-is and to-be diagrams to help customers get the most out of LivePerson's solutions.
SIZE: Medium (101-2,500 employees)
LivePerson makes life easier for people and brands everywhere through trusted conversational AI. The company's 18,000 customers, including leading brands like HSBC, Orange, GM Financial, and The Home Depot, use LivePerson to create convenient, deeply personal relationships with their millions of consumers.
LivePerson makes life easier for brands by empowering them to develop deeper and more conversational relationships with their consumers. Named to Fast Company’s World's Most Innovative Companies list in 2020, LivePerson is pushing the boundaries of conversational AI to transform the way companies and consumers communicate.
A goal like that doesn’t come without layers of complexity. Across the LivePerson organization, teams have found using visuals to be key for providing understanding, both internally as they work on creating new—and optimizing existing—products and externally as they work to ensure customers get the most out of their solutions.
Whether it’s the mobile team documenting code, a solution architect demonstrating how a product functions, or a director of DevOps directing a public cloud transformation, Lucidchart is the flexible, easy-to-use visual workspace supporting initiatives like these across the company.
Aerin Deluca is a senior Android engineer at LivePerson. As the only senior engineer on her team, she is responsible for designing cross-platform features that work on both iOS and Android. While the two operating systems are very different, visuals provide a common language that allows the iOS and Android teams to design efficient code together. Using the UML shape libraries and templates in Lucidchart, Aerin can start her design work by creating diagrams that illustrate classes, attributes, operations, and their relationships.
Aerin describes how these visuals provide a deeper understanding, compared to lines of code, for herself and her team:
“When you write a piece of code, it's inherently linear. It's all lines of text that go straight down from the top to the bottom. There are no connections or associations between the two from a visual standpoint. With a diagram, I get a high-level overview of all the different moving pieces and how they interact.”
Lucidchart makes it easy for Aerin to share and present her diagrams to colleagues, using visuals to show how the code works for both Android and iOS in a simple, non-complex way. “Having a language that we can use to speak between the two halves of the team that isn't too specific to either one helps us bridge that gap and helps us design efficient code in a platform-independent manner,” Aerin says.
As she builds these UML diagrams, Aerin loves the flexibility Lucidchart provides so she can work the way she wants to. “If there's one gripe that I will always make about almost every software solution that I'm ever forced to work with, it’s a lot of them will feel ‘producty.’ And by producty, I mean you are given a toy and told to play with a toy in certain ways. Versus giving a tool to someone technical who is trying to get work done and not limiting how they use it—that is extremely valuable to an engineer. Lucidchart doesn’t limit me, and I can use the platform at my disposal.”
In addition to designing new features, Aerin also uses Lucidchart for complete cross-company service tracking. She creates swimlanes to track code flows among different services. This documentation allows cross-functional teams to visualize all the different touch points involved in a given system to identify all components that will be impacted if code is changed and the significance and severity of those impacts.
Finally, Aerin used Lucidchart to document LivePerson’s GitFlow approach. Rather than dealing with paragraphs of text, the entire team now has a visual representation of how data moves from place to place. Team members have found this reference especially helpful for bug fixes, as the visual helps eliminate some of the neural load involved.
Visualizing software architecture
Randy McLain is an iOS developer at LivePerson. When his team inherited a very complex legacy codebase, they knew they needed a way to thoroughly understand the code before they started working with it. As a team, they built UML and sequence diagrams in Lucidchart to keep track of the different components and become familiar with the code. These diagrams helped them gain visibility in existing systems, which they needed in order to work efficiently and understand current limitations.
“Lucidchart provided a way to quickly and cleanly make sense of a codebase without actually having to go through and draw current architecture and design on paper or a whiteboard. You can go back and edit it and update it later."
Randy and his team next turned to Lucidchart for help in rearchitecting certain iOS components. They create C4 diagrams, a method for creating different layers of illustration at varying levels of complexity in order to effectively communicate software architecture to stakeholders. These Lucidchart documents contain various tabs, each with a diagram showing an increasing level of detail. Randy can use a simpler diagram to explain the architecture to his directors and stakeholders who don’t need all the gritty details but want a more high-level overview. He has received positive feedback about how these diagrams help leadership quickly gain understanding but still offer opportunities for those who want to dive deeper—they can simply reference the more complex diagrams a tab or two over in their Lucidchart document.
For example, solutions architects were able to find an internal systems pain point by examining one of these detailed 4C diagrams, and the visual helped them demonstrate the issue to upper management so they could gain approval to start working on a fix.
Randy works on a fast-paced team, and developers often feel pressure to start coding a new feature right away in order to get it built on time. However, this sometimes leads to costly rework when the team is moving too quickly and doesn’t have enough clarity before they begin. They have been able to slow down and dedicate time to designing features in Lucidchart using UML and sequence diagrams first. Randy describes,
“It's a lot easier to refactor a diagram than it is to actually go down a path in code and then have to back up and then redirect ourselves to the right path. A diagram forces you to pause and think, ‘how does this component work with this other component and is this going to work?’”
Adding this step to the design process has helped the team avoid rework. It also allows for cross-collaboration with the Android team. As either team builds features, they can use the other team’s diagram as a starting point and adapt it to their operating system. Every new feature has its own page in Confluence, and the team uses Lucidchart’s integration to insert diagrams that add a key visual component in a central location, so every team can access the information they need, when they need it.
Visualizing technical systems
Andrew Hayes, director of DevOps, relies on Lucidchart to visualize LivePerson’s technical systems. As head of the cloud center of excellence, he is tasked with driving a public cloud transformation for the company. In order to leverage the public cloud in a greater capacity, Andrew has to map out the AWS services LivePerson is using and establish guardrails and guidelines on what services they can use in the public cloud. Using Lucidchart’s AWS shape libraries, Andrew can easily draw up AWS network diagrams using the most up-to-date and industry-standard icons.
Leveraging the public cloud also requires working with customers to gain their approval. Andrew and his team need to show customers that their data will stay secure and that LivePerson will remain compliant even as changes are made. He exports his AWS network diagrams to send to customers so they can understand how LivePerson serves their traffic and secures their data. He loves that Lucidchart makes it so easy to build diagrams that look professional so he can be confident sharing them externally. After sharing their diagrams, customers don’t generally come back with any questions—a sign that these diagrams are doing their job well in providing the clarity customers need to feel secure.
Andrew’s team of DevOps engineers also relies on Lucidchart to map out schema designs for new applications or services. They create entity relationship diagrams that serve as internal documentation showing how the new application works. Not only do these diagrams help Andrew’s immediate team, but they’re also used by other teams to monitor the new application and fix issues that arise.
Visualizing customer’s solutions
Jarrod Smith is a solutions architect—he works to ensure customers are getting the most out of the solutions these other teams are working so hard to build and optimize. He relies on visuals to get ideas out of his head and onto paper as he consults customers on how to integrate LivePerson’s solutions with their existing systems.
Jarrod’s first step is to document a customer’s as-is state after an initial call. After gaining feedback from the customer, he can build the to-be diagram, which is basically an overview of the architecture. Then, he breaks down this diagram into very specific use cases. Lucidchart provides a workspace for him to explore and think deeply (and visually) about problems and use cases for a customer. “Lucidchart is really a support mechanism in a way to help me think about a problem because I can't fit everything in my head at once. So it allows me to visualize that,” Jarrod explains.
As he refines and finalizes his ideas in a diagram, these visuals are then added to Google Slides presentations for the customer. The customer can then use these diagrams as a guide for implementation. Jarrod and his team support customers in the implementation process, often providing additional diagrams to explain deeper concepts. Lucidchart helps them become consultants so a brand can implement LivePerson’s solution in the way that works best for their existing system. Jarrod explains,
“It's very much about guidance and providing a light bulb moment for whoever's reading it to say, ‘yep, this makes sense.’ It's very simple. And then they can dive into the details and actually implement it. It's a consulting tool basically.”
Lucidchart’s collaboration features have been crucial in helping Jarrod’s team work together. Team members are dispersed all over Asia, and they’re battling time zones and language differences. A combination of Google Translate and Lucidchart allows them to break down language barriers and convey complicated ideas with visuals—a universal language.
Across the company, LivePerson employees are turning to the power of visuals to understand technical concepts and illustrate complex ideas for others. Just as every visuals helps employees work together, every visual plays a part in helping brands better serve customers around the world.