Atlassian Compass: enhancing the developer experience
Share on socials
Atlassian Compass: enhancing the developer experience
Jason Spriggs
11th September, 2024
8 min read
Jason Spriggs
11th September, 2024
8 min read
This blog explores the challenges of managing complex software environments and how they drain productivity, create security risks, and cause workflow delays.
Today's software development teams work in increasingly complex environments. And as companies scale, teams must manage more and more microservices, APIs, frameworks, and software components. But the apps, tools, and software your teams are saddled with managing can drain productivity and efficiency.
As teams grapple with distributed or microservice architectures, each managed by different teams with individual tools and processes, they can spend more time gathering information than writing code and shipping new features.
Additionally, repetitive tasks like managing security vulnerabilities, configuring cloud services, automating testing, and implementing observability instrumentation add to the DevOps toil. Barriers like this can create security risks, frustrate developers, reduce organisational visibility, hinder workflow, and cause delays.
A unified, collaborative approach to development
But by streamlining software development, you can untangle complexity and increase the productivity and happiness of your developers. One way to do this is to invest in DevOps platforms that provide a central location for teams to work and collaborate. Enter Compass.
Compass, Atlassian’s innovative developer experience platform, is designed to help teams master the complexity of their distributed software architecture. It’s a source of truth for software component ownership, dependencies, and service health.
The platform’s capabilities—its software architecture catalogue and ability to integrate code repositories, store toolchain data, and define health standards for continuous improvement—support teams in tackling the challenges of software development. Importantly, it provides teams with a centralised place to collaborate and keep work flowing, helping to improve developer experience (DevEx).
A positive DevEx can be fundamental in enhancing efficiency. Gartner research shows teams with a high-quality DevEx are 33% more likely to reach their target business outcomes, 31% more likely to improve delivery flow, and 20% more likely to stay with their employer. But to help your developers enjoy the benefits of positive DevEx, first you should recognise the common challenges they face.
Top challenges software developers face today
The following challenges can hinder developer productivity and prevent software development efficiency.
- Context switching and knowledge management. Today's developers often work with too many tools and software solutions, which creates complexity. Finding valuable and time-sensitive information across these platforms can be difficult, which leads to knowledge silos. Your developers may need to switch contexts to get to code snippets, API documentation, or internal knowledge bases. And this constant context switching takes them away from coding and software development.
- Repetitive tasks and manual testing. No matter how necessary, repetitive tasks such as manual testing, data entry, and environment setup are not the best use of a developer's skillset. Yet many developers spend much of their time doing these tasks instead of more complex and innovative work.
- Security protocols. Strict security protocols are essential when it comes to protecting sensitive data. But overly complex security processes and reviews can disrupt the pace of development cycles. Automation and clear guidelines can help strike a balance between security and agility and streamline security practices.
- Communication silos and knowledge gaps. Development thrives on effective communication and collaboration. But siloed teams, unclear requirements and knowledge gaps between developers and other stakeholders (like designers and product managers) are barriers to communication and collaboration. It can lead to misunderstandings, project delays, and increased costs.
- Outdated tools and slow infrastructure. Robust tools and infrastructure can make software development faster and more efficient. On the other hand, outdated technology like slow servers and inefficient code repositories can hinder your software efficiency and performance and even create risks like security vulnerabilities, compatibility issues, and high maintenance costs.
How can Compass help?
Compass provides a central hub for teams to monitor, manage, and optimise their software architecture. The platform supports teams through four key areas:
1. Software component catalogue
The unified catalogue consolidates all software components into a central repository, providing your teams with a single-pane-of-glass view of everything they need to build, operate, and understand the interconnectedness of their software. Without the chaos of navigating multiple systems, teams can quickly find relevant information, including the technical architecture and metadata of components.
2. Health scorecard and metrics
Compass offers health scorecards that provide insight into the status and performance of each component, while DORA, SPACE and DevEx metrics across teams and services can measure critical aspects such as deployment frequency, lead time for changes, time to restore service, and change failure rate—ultimately helping identify bottlenecks and improving your DevEx. With visibility and reporting across the entire architecture, your teams can easily stay on top of things, detect problems early, and improve their results.
3. Templates
Customisable software templates provide a structured approach to development, helping speed up and standardise component creation and enabling your teams to focus on innovation and delivery. Through templates, your teams can integrate predefined configurations for CI/CD tools, guidelines, and cloud services, as well as incorporate best practices.
4. Extensibility
Another cornerstone of Compass is its extensibility. The platform integrates seamlessly with existing internal and third-party tools, enabling you to bring together your CI/CD, cloud infrastructure data, costs, and more in one place. By integrating data from over 20 different services and allowing for further customisation through Atlassian Forge (a development platform for building Atlassian apps), organisations can tailor Compass to their individual needs and prevent context switching.
1. Software component catalogue
The unified catalogue consolidates all software components into a central repository, providing your teams with a single-pane-of-glass view of everything they need to build, operate, and understand the interconnectedness of their software. Without the chaos of navigating multiple systems, teams can quickly find relevant information, including the technical architecture and metadata of components.
2. Health scorecard and metrics
Compass offers health scorecards that provide insight into the status and performance of each component, while DORA, SPACE and DevEx metrics across teams and services can measure critical aspects such as deployment frequency, lead time for changes, time to restore service, and change failure rate—ultimately helping identify bottlenecks and improving your DevEx. With visibility and reporting across the entire architecture, your teams can easily stay on top of things, detect problems early, and improve their results.
3. Templates
Customisable software templates provide a structured approach to development, helping speed up and standardise component creation and enabling your teams to focus on innovation and delivery. Through templates, your teams can integrate predefined configurations for CI/CD tools, guidelines, and cloud services, as well as incorporate best practices.
4. Extensibility
Another cornerstone of Compass is its extensibility. The platform integrates seamlessly with existing internal and third-party tools, enabling you to bring together your CI/CD, cloud infrastructure data, costs, and more in one place. By integrating data from over 20 different services and allowing for further customisation through Atlassian Forge (a development platform for building Atlassian apps), organisations can tailor Compass to their individual needs and prevent context switching.
Enhancing Developer Experience with Atlassian's Compass (Demo)
If you’re ready to invest in your developer experience, watch our webinar hosted together with Atlassian. You’ll gain a deeper understanding of how Atlassian's Compass can improve your development workflow, learn practical strategies to enhance collaboration and productivity within your team, and see real-world examples of Compass in action.
How Compass streamlines software development and enhances DevEx
Compass is designed to address developers' key challenges in modern software development environments. Here’s how it can help improve DevOps practices and deliver a better developer experience:
1. Reduces context switching
Context switching hinders productivity. But Compass provides a unified interface where all necessary information and tools are easily accessible. This reduces context switching as your developers don’t need to jump between different applications and platforms. Importantly, it means they can focus more on coding, innovation, and problem-solving.
1. Reduces context switching
Context switching hinders productivity. But Compass provides a unified interface where all necessary information and tools are easily accessible. This reduces context switching as your developers don’t need to jump between different applications and platforms. Importantly, it means they can focus more on coding, innovation, and problem-solving.
2. Consistent tools and processes
Inconsistent tool usage and processes can create confusion and inefficiency among the ranks. With Compass, you can standardise tools and processes across teams and bring all teams in tune. Doing so encourages communication and collaboration within and outside the same team, improving efficiency and saving time on repeatable processes. Win-win.
3. Establishes ownership and dependencies
Without clear ownership and dependencies, delays and errors in software development can arise. With Compass, you can identify who owns each component and what dependencies exist between them. Greater transparency helps teams coordinate more effectively and minimise potential issues by spotting them before they develop into something more.
4. Improves collaboration and communication
Effective collaboration and rapid feedback loops are foundations of good DevEx—and Compass facilitates both. Compass brings together relevant information and tools in one place, and provides a place to collaborate and communicate. Plus, real-time insights and metrics accelerate feedback loops and help teams identify and address issues faster.
Transform your DevOps journey with Compass
Our experts are ready to help you streamline processes, enhance collaboration, and boost your team's productivity. Contact us today to discover how Compass can be tailored to meet your unique needs and drive your success.
Read the other blogs in this series
Customising your developer experience with Compass
Discover how Atlassian's Compass enables custom environments through its extensibility features.
Empowering autonomous teams with the Compass team dashboard
Learn how Compass' team dashboard empowers teams to work autonomously and why that can be beneficial for your organisation.
Written by
Jason Spriggs
Consulting Team Lead
Jason, an award-winning DevOps consulting team lead, providing architectural vision and technical expertise. At Adaptavist, Jason and his team implement a wide range of industry-leading technologies and processes for clients.
Atlassian
DevOps