GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • All Articles
  • What is DX

This view

  • Original page
  • New address

GeezerVison is showing developerexperience.io — Good Developer Experience | Developer Experience Knowledge Base

All Articles

Content

    Is the article helpful?

    All Articles
    Nov 11, 20195 min read

    Good Developer Experience

    Do not forget to make your developers happy, and keep them happy!

    What Is a Good Developer Experience

    The Developer Experience (DX) describes the experience developers have while using or working on your product. It is a package of positive and also negative feelings. In many companies, dealing with DX is often secondary to trying to make a User Experience (UX) as good as possible. This approach is unfortunate - developers are users too! They use your product, frameworks, tools, etc. and they have some experience of using it. It is up to you to decide if this experience is going to be a good one or a bad one. But remember, their satisfaction and happiness are crucial for the success of your project. Happy developers create exceptional software in the long term. A positive developer experience, ensures that your developers are happy, satisfied, and less likely to leave your team.

    We define a great DX by these four factors:

    1. Fitting architecture

    Find a compromise between simple and more complex architecture. Simple means more pain later, complex brings more pain now. Consider the size of your project and your team. Good architecture is difficult to break, has short feedback loops and it has a great introspection.

    2. Great tools

    Automate where possible. Repetitive tasks are exhausting. Automation lets your team understand the configurations.

    3. Processes to back that all up

    Processes work as automated checklists, and give you have consistent steps that need to be done each time. Defined processes help you with team discipline. Use processes for QA, deployment, feedback, and for onboarding if your company is big enough.

    4. Nontoxic team culture

    Define the purpose of your company: making money should not be the only goal. Culture itself is the most important brainware (a software that runs in the brain) you can install within your company and the team - every decision the developers take will be filtered through the installed brainware. If they do not agree with the brainware, they ignore it.

    Ready to put this knowledge into action?

    Visit our website and learn how DX Heroes can help your business succeed.

    Learn more

    Why You Might Want the Good Developer Experience

    The teams with good DX are highly productive, and display these traits:

    • Sense of impact

      They understand that they are not just making money. They know that their work matters, they are improving someone else’s life.

    • Great sense of ownership and responsibility

      They are responsible for the success. Every team member should feel a responsibility for the company’s success.

    • A common goal

      With the team, their division, and the company as a whole.

    • Friendliness and honesty

      We call it “hey bro” culture. We emphasize sincerity with great respect.

    • Allows for failure

      Developers should be brave and take risks. But risks should always be calculated, and developers have to be aware of how much of a boom every action can cause.

    Traits of culture with bad DX:

    • Finger-pointing

      Team members may blame each other for poor work. This is a very toxic thing but it happens a lot.

    • Big penalty for a failure

      For example, when your boss says that if you do not meet the deadline, you can be fired

    • Constant crunch time, constant overloading of the teams

    • Hostility and uncertainty

      Unhealthy competitiveness between teams (for example, this guy was promoted because he did a better job than me)

    • Diluted responsibility

      In big companies, it can feel like nobody is responsible for anything. It takes balls to say: “sorry guys, I screwed up”. It is crucial to be able to take responsibility.

    Problems the Good Developer Experience Solves

    • Knowledge hoarding
    • Bad Product-Market Fit
    • Demotivated Team
    • "Not My Problem" Mentality
    • Unsuccessful Product
    • Unhappy Clients
    • Disconnect Between Business and IT
    • Toxic Team Culture
    • Poor Code Quality
    • Increased Cost
    • Meaningless Work

    How to Implement the Good Developer Experience

    There is a famous "Scope Triangle" created in the mid 1980s by Dr. Martin Barnes. It shows the relationship between the three primary forces in a project:

    Scope TriangleSource: Scope Triangle

    This triangle means that if you want to increase the time, you have to increase money or quality.

    We disagree - that is not how it works in reality. You have to insert an emotional cost to the triangle:

    Emotional Cost

    If your developer has to stay late to finish a task, it is not only the time they have to invest. Another part of this investment is an emotional cost. Having a great DX helps you having this emotional cost under control. Keep the emotional cost low to make your developers happy.

    Common Pitfalls of the Good Developer Experience

    • Giving too much information to developers too soon.
    • Giving too little information to developers when they need more.
    • Overusing processes can result in a mentality of “one size fits all”
    • Over-engineering tendencies
    • Thinking that agile = an excuse to throw more work at the developers

    Resources for the Good Developer Experience

    • Hackernoon: The Best Practices for a Great Developer Experience (DX)
    • Youtube: Vratislav Kalenda: The only way how to have happy & productive developers [DevFest CZ 2018]
    • Cristiano Betta: The 7 Sins of Developer Experience
    • The AppsLab: Developer Experience: What and Why
    • Developer Care: Developer Care: restoring the common core

    Was the article helpful?

    good developer experience
    user
    tool
    framework
    culture
    communication
    emotion
    toxic team culture
    motivation

    Want to write for DXKB?

    Feel free to contribute. People from DXKB community will be more than happy.

    Avatar

    Prokop Simek

    CEO

    CEO at DX Heroes
    CEO at DX Heroes

    Related articles

    ALL ARTICLES

    Design Sprint

    A Design Sprint is a framework that reduces the risks associated with product development. It is an intense process done by a small team in just 3 - 5 days.

    Read more
    Git Flow

    Git Flow is a specific branching system for Git. It helps the team to better control and add different project versions.

    Read more
    Effective Team Communication

    Effective team communication creates a healthy, productive environment across cross-functional team structures, ensuring team success and cohesion.

    Read more
    Icebreaker

    An icebreaker is an activity you can use at the beginning of a meeting to make attendees more comfortable with each other, encouraging them to speak up, listen up, join in, and open up to new ideas.

    Read more
    Start as a coder

    Starting on the journey of coding can be extremely overwhelming. But consistent efforts and determination will surely help you out in this journey.

    Read more

    ALL ARTICLES

    Contribution

    We are happy you want to contribute to DXKB. Please choose your preferred way

    You are visitor 01402503 — GeezerVison does not store the pages you look up.
    Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.