What skills drive a top software engineer’s career at Yahoo?

Graham Bartley discusses his role in the software engineering landscape and the evolution of his work over the years.
“No two days are exactly the same, which is part of what keeps the job engaging,” Yahoo software engineer Graham Bartley told SiliconRepublic.com.
He said, “On days when I go to the Dublin office, I often spend the first hour of the morning enjoying tea and meeting my colleagues face-to-face. I always enjoy hearing their stories, learning a little about what they are working on, and seeing opportunities for collaboration.”
“On remote days, I often start by looking at our Jira team board or any of the nightly Slack chats. I lead a team called Optimus, which is the main GenAI team for Yahoo DSP, so there’s often a thread to get information from my team members or a design question from one of the other teams we support.”
Since then, Bartley’s day is a combination of writing code, reviewing pull requests, design work, managing Jira tickets and taking calls with team members. On a coding day, they might find themselves building a new API endpoint for Yahoo’s troubleshooting agent, writing integration tests, or fixing a production problem at the end across multiple services.
“Usually there are several meetings, including our daily team stand-up, individual calls with each team member, team synchronization with other teams, construction meetings and office hour sessions where engineers present designs to get feedback. I try to secure a focused time for intensive work, but being a team leader means you are always available when someone needs support.”
As a senior software engineer, how does your role fit into the broader software industry?
I work on Yahoo’s Demand Side Platform (DSP), which is the technology that supports how marketers plan, target and optimize digital advertising campaigns across all channels such as mobile, connected TV, desktop and audio. It’s a big part of what’s called programmatic advertising and it’s a growing space. Within that, my current focus is on using GenAI to make the platform smarter and more intuitive. I lead the team that built the first GenAI-powered Yahoo DSP feature, an AI troubleshooting agent that helps marketers understand why their campaigns might be underperforming and what to do about it.
What skills do you use every day and how have they evolved over time?
Every day, I write Python and Java, design APIs and distributed systems, review code and work on the entire full stack from database schemas through backend services to UI components, although recently my focus has been entirely on the backend as that is the responsibility of my team. I also design technical structures, write design documents and present to both technical and non-technical audiences. The scope of what I do has grown a lot over time. Earlier in my career, I was coding straight down and delivering features within a few code based Jira tickets I was assigned. Now I spend as much time on system design, coordinating different teams and setting technical direction as I do writing code.
The biggest change of late has been AI, both in what I build and how I build it. On the product side, I dove deep into the main language models, agent frameworks, content model protocol, vector databases, knowledge bases and test pipelines for non-deterministic AI results. Two years ago, none of these were part of my daily vocabulary.
What are the hardest parts of your work day and how do you navigate them?
Changing content is perhaps the biggest challenge. As a team lead and code owner across all repositories, I can go from a debugging session to a design review to a Slack collaborative team discussion about validation architecture, all within a few hours. Each theme requires complete attention and modification is expensive. I get around that by disciplining myself about blocking time. I cover the morning with intensive technical work where possible and group meetings in the afternoon. And I use structured notes and scripts a lot. If I get distracted during work, I want to be able to pick up where I left off.
AI tools actually help here, too. Being able to go back to a Claude code session and say ‘here’s where I was, here’s what I was trying to do’ and have him rebuild the context is really helpful. Working remotely from Ireland with globally distributed teams can present some challenges, such as working after hours to communicate with colleagues abroad. Managing this is a skill in itself and can be difficult because it can feel more productive to work late when US partners are available, for example. I try to be careful to adjust the hours worked late to maintain a good work-life balance, but it’s quite a challenge to balance the feeling of productivity with the reality of burnout.
Has your role changed as the industry has grown and developed?
Significantly. When I started, engineering work at DSP was mostly about building reliable CRUD features and developing deployment workflows. The biggest change since then has been the arrival of GenAI. In late 2024, I was part of a small working group that was exploring how GenAI could be used in our product. Within a few months, that pilot project became a full strategy. I went from leading the commercial news team to founding and leading the first GenAI team for Yahoo DSP. The way we build software is also changing.
Last year, our team wrote the code in a traditional way. Now we use AI coding assistants every day. It’s still early days and there are real learning curves. We’ve found that AI works best for well-defined, responsible tasks but struggles with cross-cutting concerns involving multiple resources and large environments. Knowing when to lean in and when to step back and think for yourself is a skill in itself. The organizational model has also changed. We have moved from traditional team structures to a model of teams, tribes, chapters, and organizations, which places greater emphasis on cross-functional collaboration and independent delivery. My role has changed from primarily writing code to being a technical leader who sets direction, defines standards and enables other teams to build on the foundations we create together.
Do you know something now about working on software that you wish you could get started with?
I wish I knew more about work-life balance and spotting the signs of burnout. At the beginning of my career, I had a tendency to just get by and it took me a while to realize that that was not sustainable. I am now more serious about managing my time, protecting my energy and knowing when to stay out of trouble. You actually come back sharper when you do that. I also wish to challenge more ideas. When you’re starting out, it’s natural to take existing requirements and designs at face value. But as I’ve gotten older and done more design work, I’ve found that some of the biggest improvements come from asking why something is the way it is. The best solutions often come from stepping back to the environment, not just making things better within the given constraints.
What advice do you have for others who want to follow in your professional footsteps?
Don’t be afraid to say “I don’t know” and go learn. This is important. The best developers I’ve worked with aren’t omniscient. They are the ones who learn quickly and are not shy about being a beginner in something new. Being a mentor also means being a coach and I have learned a lot from the engineers I have taught. A year ago, I had never built an AI agent. Now I lead the team that builds them.
Don’t miss out on the information you need to succeed. Sign up for Daily BriefSilicon Republic’s digest of must-know sci-tech news.


