As a platform quality engineer at Nexthink, my team and I own releases for the core product suite. This placed us at the heart of the company’s migration to the cloud in 2020. We partnered with New Relic to completely transform our delivery model and overall offering with real-time observability. Approximately 80% of our business is now in the cloud.
Nexthink Infinity is a human-centric data platform designed to increase employee productivity and satisfaction. It does this by quantifying user experience via a set of diagnostics. Nexthink Infinity lets us both create and lead the digital employee experience (DEX) market. The Nexthink DEX Score is the first metric to measure the modern digital employee experience and more than 400 companies use it. Our product is delivered by deploying an agent on the user endpoint, such as an employee desktop PC or laptop. This agent enables us to collect data and execute scripts, roll back or upgrade software, and interact with the user to perform certain actions.
Moving to the cloud
The fact that the vast majority of our offering was on premises left us in a challenging spot. Nexthink required a lot of servers that needed configuring. As we started onboarding customers with ever larger implementations, this model was less and less sustainable.
When we started to look at migrating to the cloud, we thought about operating the solution ourselves. We wanted to move quickly. Instead of rebuilding our application from scratch and operating it in the cloud, we chose a lift-and-shift approach. Before this, we had no monitoring and no observability into our systems. Because everything was operated on premises on the customer side, when we had an issue, we needed to ask the operations team to collect the logs and identify and fix any underlying problems. This was a very slow and complicated process.
Unifying data and insights into one dashboard
New Relic helps us access data very quickly. Through dashboards and New Relic Query Language (NRQL), we can immediately analyze our data in-depth, searching and pinpointing problems. We use thousands of widgets and alerts based on NRQL queries. New Relic dashboards are the most crucial features we started using as we were moving to Amazon Web Services (AWS). Our feature team leverages dashboards to monitor their environment in real time. Dashboards are a single source of truth for us. Overall they have made for more effective internal communication. Now, we’ve configured alerts to notify us about events or services to speedily identify and address issues. New Relic synthetic monitoring helps us monitor availability. We’re also starting to implement Apdex tracing to measure user satisfaction with application performance.
While migrating to the cloud, we also transformed our offering as a service. One example is our CI/CD tools—we are switching from Jenkins to GitHub Actions. With our observability, we were looking for the same: it's not our core business. So we want observability provided as a service instead of operating it ourselves. This is just like the services we provide for our customers.
New Relic helps us understand what goes on in all parts of our cloud estate in a flexible consumption model. In the past, it could take several weeks to fix an issue. It involved a cycle of exchange between customers, support, and developers that slowed everyone down. Now we are responding proactively to issues in real time. This is a major improvement for us. Now we are able to identify and fix issues before they become visible on the customer side.
Paving the way for DevOps
Our company culture also started to change. We moved away from a pyramid structure, which hinges on the green light being given by a release manager. With instant releases, new elements flow into production every hour. As engineers, you constantly operate your application. It is virtually alive, as you continually introduce new changes. This approach enables a continuous delivery model. The more we deliver, the less change we have to deliver each time, and the less risk we have to test. By reducing the risk, we can go faster overall.
Moving to this model also means giving up a degree of control. New Relic helps us pinpoint specific changes that might have an adverse effect. As a consequence, our developers are now enjoying more meaningful tasks that are invested in the product—they’re doing the work they were hired to do.
The views expressed on this blog are those of the author and do not necessarily reflect the views of New Relic. Any solutions offered by the author are environment-specific and not part of the commercial solutions or support offered by New Relic. Please join us exclusively at the Explorers Hub (discuss.newrelic.com) for questions and support related to this blog post. This blog may contain links to content on third-party sites. By providing such links, New Relic does not adopt, guarantee, approve or endorse the information, views or products available on such sites.