ZenHub track core metrics with infrastructure monitoring and APM
Partager ce témoignage
- Taille de l’entreprise
- Études de cas présentés
ZenHub is the only agile team collaboration and project management solution natively integrated with GitHub. It enables teams to add powerful tracking, planning, and reporting features to their GitHub instance using the ZenHub web application, or through a simple browser extension. This makes its development processes even more agile while maximizing team efficiency.
Launched in 2014, ZenHub was built by a team of developers in Vancouver, Canada, to manage projects while preserving their focus on GitHub. Now, ZenHub is a remote-first boundaryless company with a distributed workforce across the globe. 54,000 developers across more than 40 countries at companies including Adobe, GE, Microsoft, and Comcast rely on ZenHub to ship better software, faster.
Troubleshooting within a complex tech stack
With ZenHub, any software engineering team can get a real-time view of what's happening, even when some of the work happens inside GitHub and some of it happens in other tools. But maintaining this type of data synchronization is easier said than done.
Because ZenHub is tightly integrated into GitHub, it must follow the same rules and structures that the GitHub team provides in terms of their APIs and open systems. These technical limitations can make it difficult to keep data synchronized between databases at GitHub and ZenHub. ZenHub uses replication and caching techniques to help maintain data synchronization and application performance while respecting rate limiting systems and other limitations that the GitHub API provides.
Given its complex technology stack, troubleshooting issues quickly and effectively is critical to its success. If a customer reports an issue, or if the engineering team notices a performance degradation in the tool, ZenHub needs to be able to swiftly identify what's wrong and, most importantly, fix it. Observability is important for the engineers at ZenHub, who need to be able to understand what’s going on in the application and why it’s happening.
Troubleshooting effectively becomes even more paramount as the product expands. As the company builds more complex software, it becomes impossible to track all of the components and services and the cloud providers they use. No single engineer can be expected to retain all of this information in their head, let alone know how to pinpoint where a problem is happening at any given moment.
The flip side of troubleshooting is maintenance: When the product is running in a healthy state, how does engineering ensure its consistency? And, how do they scale their systems? The engineers at ZenHub need to be able to gain visibility into the load and the performance of the application, identify bottlenecks, and spot patterns and trends in user behavior. Then, they must use this information to determine where and when to conduct maintenance.
New Relic gives ZenHub full-stack observability across the application environment to maintain the health and performance of applications, quickly identify issues, detect trends, and scale to support business growth.
“We continue to grow on all fronts, thanks to the observability and scalability we get with New Relic,” says Ev Haus, Head of Technology at ZenHub.
Monitoring application health
The ZenHub engineering teams use New Relic to monitor the health of the application and infrastructure by tracking error rates, throughput, transaction response times, user behavior, and other core metrics. For example, the growth pod might review the usage of a new service or capability and how it’s performing, then use that data to guide engineers in optimizing its performance or inform future decisions for new features and functionalities.
New Relic also helps ZenHub monitor and track incidents, alerts, and threshold hits. In fact, ZenHub uses New Relic as a daily checkpoint, with a team member logging in first thing in the morning to review the state of the infrastructure. By keeping a regular pulse on the heartbeat of the product, ZenHub can predict incidents, reduce outages, and quickly fix issues with minimal impact on customers.
In addition, performance data within New Relic helps ZenHub teams prepare for meetings with prospective customers and verify their SLAs. With real raw data from New Relic, ZenHub can show the exact service levels they can deliver according to the prospect’s needs.
Quickly troubleshoot problems and identify bottlenecks
The ability to visualize and analyze telemetry data helps ZenHub engineers get past the “what” to uncover the “why” and get to the root cause quickly. Without this, ZenHub estimates that troubleshooting its large, complex technology stack, which includes caches and messaging queues, could take weeks. With New Relic, ZenHub engineers can see exactly what is happening and can identify and fix problems and bottlenecks in days and even hours, saving valuable engineering time.
The quicker ZenHub can get to the root of the problem, the more cost-effective it is for the business: Every time a problem happens, ZenHub must pull engineers off of other key projects they’re working on. Over time, it becomes expensive to allocate development resources to fixing issues. Having a tool like New Relic helps ZenHub zero in on problems and allows developers to focus on building and innovating versus troubleshooting.
Scale effectively without overprovisioning
As ZenHub’s user base grows, observability into the health and performance of its software helps the company scale effectively. As software for modern engineering workforces, ZenHub platform usage falls into relatively predictable usage patterns, with increased usage during business hours. Instead of over-provisioning infrastructure to support growth and maintain performance, ZenHub uses metrics within New Relic to plan for the right capacity increases at the right time, without impacting performance or overspending.
“New Relic's consumption pricing has been massively beneficial to ZenHub because it has saved us a lot of money while giving our engineers access to all of our telemetry data," says Ev. "The value we get for the price with New Relic is unquestionable.”
Enabling teams to be as efficient as possible
ZenHub imagines a workplace where every software team is as efficient and as effective as possible. That can mean that engineers can stop spending time working on things they don’t need to be doing. It can also mean a workplace with greater transparency and visibility: where project managers, marketing, design, leadership, and other stakeholders can more easily access the internal data that ZenHub provides.
It all starts with data collected and centralized in ZenHub. By leveraging the observability of key data operations through New Relic, ZenHub is prepared to build the project management tool for tomorrow’s workforce.
- Environment: Google Cloud Platform running Kubernetes, as well as an on-premises version
- Team organization: Squad-type model similar to Spotify, with full-stack pods responsible for individual areas of the business
- Monitor the health of its application within Kubernetes and Google Cloud Platform
- Quickly identify problems and potential bottlenecks in a complex application environment
- Use insight into capacity requirements to effectively scale to support growth
- Drive product research through insight into usage trends
- Demonstrate performance against service-level metrics in pre-sales situations