Just the other day I was talking to an agile developer about his recent experience interviewing at one of the largest financial institutions in the world. This company is a great employer, but it's also a very old company. It has a lot of old systems and tangled processes. He was interviewing with a smaller group that successfully embraced agile practices, but the organization as a whole might not be interested in agile development at all. Such an environment could limit your career path within the organization. Conversely, joining an innovative agile team that's making waves in the global IT environment could mean you're well positioned as a pioneer who's helping bring agile to the company as a whole. You need to assess the organization's agile embrace, and determine what influence it will have on your career path, and how it aligns to your career goals.
7. What problems have you encountered in adopting agile?
Everybody in manufacturing falls in love with Toyota's production system. People are always trying to mimic how Toyota does things. And there's no shortage of technologists who talk about how Toyota's system can apply to the IT supply chain. But if you talk to people who work at Toyota, they don't think of what they do as a "system." It's just what they do. No one thinks about the culture. They just live it. To that end, ask for a back story on the organization's agile adoption. If they can give you a detailed account of their problems adopting agile processes, then they probably aren't very far along. Teams that are far along are living and breathing the method, and it's no longer a struggle.
8. Have any of your people spoken at conferences or published about your use of agile?
When you're researching a potential employer, try to determine whether any of their people speak at agile conferences, publish books or articles, produce an agile blog, moderate agile communities online, and so on. If there are agile thought leaders on staff, that's a very strong indicator that their use of agile is mature.
9. Are your people certified and trained on agile? Do you offer training and certification?
A lot of employers require certification for the people they hire. You can easily turn that question around and find out if the people already on staff have been certified. Training helps people understand the culture of agility versus the methodology of agility. There's quite a leap between the two. You can learn the agile methodology in an afternoon by reading a book. But it's the culture of agility that makes the difference between a team that wants to become agile and one that already is.
10. What are your metrics for post-release defects and customer satisfaction?
The absolute numbers don't really matter here. What you're looking for is whether they've established a culture of metrics and continuous improvement. People only measure what's important to them. Any metrics that the potential employer can share indicates what they focus on, whether they have a quality mindset and whether they are customer-focused. I say the numbers don't matter because if, say, the company tells you that its customer satisfaction is only 70%, but there is a target in place to get to 85% in the next year; if there's an initiative to engage with customers; if they're getting the Scrum teams lined up and talking to the customers ... then you're hearing the words of a quality mindset, a customer focus and an agile approach. Even if their metrics aren't the greatest, the fact that they have the metrics is a great sign, because you, as an agile developer, would be coming on to help them improve those metrics no matter what they are.
Your Turn: What Do You Want?
This is the most important question, and one that obviously you must ask yourself, not the potential employer. As an agile developer looking for a new job, are you looking to go into an established, finely tuned agile environment? Are you OK joining a team that isn't truly agile yet but is fully committed to becoming so? Are you looking to help create an agile environment in an organization that's just getting started? Are you comfortable being part of an agile team in an otherwise non-agile organization?
It might not be a bad thing to come into a messed-up shop if, when the company leaders explain why they're looking for agile developers, it's because they know they're messed up and need help to make the change. The self-awareness of the organization is crucial, as is your personal self-awareness about your needs, capabilities and desires.
Some people like a challenge. Give them an organization that's totally messed up, and they find it fun to turn it around. But you have to be in the right circumstances. You need the power to make changes and the support systems to help make them happen. If you're going into a troubled organization as a developer tester, you won't really be in a position to make the changes happen. In that case, make sure that the company is committed to making the cultural change needed to become agile. Talking the talk in the job description isn't enough.