Supporting developers can be a challenging task for platform engineers. As the go-to person for all things technical, it's easy to become overwhelmed with requests for help and support. But with a little bit of planning and a lot of communication, it's possible to maintain good working relationships with developers and keep your workload manageable.
One of the biggest struggles of supporting developers is being their "personal Google." Developers come to us with all sorts of questions, from the simplest of troubleshooting to the most complex coding issues. It can be overwhelming to always be on call and expected to have all the answers. To prevent this, it's important to set boundaries and expectations. I wrote an article about communication that is applicable in many scenarios that outlays much of this. Let developers know that while you're happy to help, you also have other responsibilities and may not always be available immediately. Encourage them to do their own research and troubleshooting before coming to you for help. We've all got burndown, velocity, and end-of-sprint showcase demos to complete.
Another way to prevent being overwhelmed is to prioritize requests. Not all requests are created equal. Some are more urgent or important than others. By prioritizing requests, you can make sure that the most critical issues are addressed first. This will not only help you stay on top of your workload but also help developers feel like their issues are being taken seriously. It's not uncommon for every requester to believe that their struggle should always be at the top of the queue.
Developers are often working on tight deadlines, and their frustration levels can rise when they hit roadblocks. It's important to keep in mind that they may be under a lot of pressure, and their frustrations are usually not directed at you personally. Try to stay calm and understanding, even if they're not always easy to work with. Do not make assumptions about knowledge or skillset - you will be setting yourself up for disappointment 99% of the time. Preventative measures to blockers include active participation and planning with client teams to identify platform resource dependencies as early as possible, so long as your team has availability and capacity to do so.
Maintaining a good working relationship with developers also means being transparent and open. Let them know what you're working on, what your priorities are, and when they can expect to hear back from you. This will help them understand your workload and prevent misunderstandings.
In addition to communication, it's important to have a good understanding of the tools and technologies that developers are using. This will help you troubleshoot issues more quickly and provide better support.
In conclusion, supporting developers can be a challenging task, but with a little bit of planning and a lot of communication, it's possible to maintain good working relationships with developers and keep your workload manageable. By setting boundaries and expectations, prioritizing requests, staying calm and understanding, being transparent and open, and understanding the tools and technologies that developers are using, you can become a valuable asset to the team and help developers be more productive. If your team is adding tech debt or delaying platform work at a rate greater than you're completing it, it might be time to have a conversation with leadership, but that's a story for another day.