Welcome back to the Meet Our Team Q&A series. My name is Daniela Williams, Project Manager at ISE, and I'll be asking ISE team members questions to help give insight into what makes us tick.
Successfully Implementing Agile
Q: What hurdles or mistakes have you seen companies make when starting Agile?
Andrew: One of the complexities in terms of getting to Agile is, what is it? Agile is a method; it's a set of practices; it's a process. So there can be a dogmatic argument that we need to follow it by the book exactly. That is sort of a trap, as well as not realizing that it's truly a mindset. I really liked the way at least one of the writers I read put it, "Scrum is a framework for creating well-formed teams." It's training wheels for creating an Agile way of working. Eventually you'll take the training wheels off and you won't need to follow things exactly. What you will do as an Agile organization is adapt that over time. If what you are doing in 3 years looks exactly like Scrum from the book, then you probably haven't actually made an Agile transformation.
So what are the big stumbling blocks? Imposing Agile top down in a hierarchical, traditional organization can be kind of tough because you may be defeating the thing you need the most, which is the buy in and engagement of the people who are going to be executing on it. On the other hand, if Agile is being pulled from the bottom up, from the ranks of people who are doing the work, it can run into roadblocks where the rest of the organization isn't ready for the cultural shift that's occurring.
At ISE we gradually waded into Agile, but it's taken us awhile to really take on what it really means for us to do this well. There have been some interesting hurdles to cross. One being: how do you work with customers who want to have fixed scope, fixed priced proposals? There's nothing wrong with those if you get enough certainty around them. But the layers of complexity from "working a complex technology" to "I don't know how this team is going to behave that is different from that team," give you fairly different answers to the same question in terms of how long will it take and how much it will cost. So taking into account those hurdles is really interesting.
Q: How did Agile start at ISE? How did those first people implement Agile and learn from it?
Andrew: The first project was one we did with Qualcomm and they were already doing Agile. They essentially led and we were working as a mixed team containing our people and their people. We didn't have a lot of experience with it, so we just followed along. The next one was when John Deere made the big transition, and we had some people train with them. We definitely had people on mixed teams where we were participating in their process. Soon after that we started saying new projects within ISE should be Agile. I took some of the training material we received and taught the eFleetSuite team as the first round of Agile. Now three years later, everyone has learned a lot more, and the team has totally transformed over a period of time. Last fall we did an Agile refresh followed by Certified ScrumMaster® training.
Q: What is the best way for a company to get started with Agile?
Andrew: I don't know if there is a "best way." The first piece is deciding on what your company is looking for. Is everyone on board to go Agile? If everyone is on board there is a temptation to just go all in. However, you don't know what you don't know, so any time you change what you're doing there is going to be some chaos. You're going to feel that impact.
Another way to get started comes from Mike Cohn's book, "Succeeding with Agile," which suggests that you should start one team. Choose a team that you can support, that is fairly enthusiastic about it, and has a project that makes sense to do that on. And, then go from there and learn from your stumbling blocks. Most importantly, find a team that wants to do it.
The other thing I would say is some upfront training is good, and attention to not just the Agile framework. By all means get scrum training - I think that's really valuable - but also look at how you're going to do the Agile technical practices. One of the 12 Agile Manifesto principles is that "continuous attention to technical excellence and good design enhances agility." There is a lot under the covers in terms of what that means, but one piece of that is using what you would consider professional practices of Test Driven Development (TDD) or Behavior Driven Development (BDD), test automation, and continuous integration. Some kind of training would be valuable in that, because you are either going to train and then figure out how to do it, or try to figure out how to do it along the way on a project without any expertise. That can be done, but it's hard and delays the learning curve.
Q: What's available for Software Engineering Processes at ISE? What sets us apart from other companies?
Andrew: We've worked with many clients over a long period of time. The clients we've worked with have been all over the map in terms of their business focus and software maturity. For some companies, software is their business, and for others it's a small piece of what's essential to their business. There is a whole world of degrees of sophistication of clients we work with.
One of our strengths as an organization over a period of time, has been figuring out how to organize things better for the customer's benefit. We'll work with you to understand how you're doing what you're doing, and give you feedback. As our knowledge has evolved, our ability to do that has improved, as well as the range of options we have at our fingertips to provide that feedback. What that translates to is, as we engage with the client to assist in the development of their software or product, we have the ability to assist in the development of their team, their process, and way of working. So we can provide not only help to get the work done, but help on how to get the work done, and what that looks like.
Our team members are already experienced Agilists and have the technical practices, like TDD, and can help another team get up to speed doing that. There are companies that specialize in selling Agile coaching or scrum training, and I wouldn't say that's our primary focus. Instead, ISE bundles, "working with you to help create your product" combined with "working with you to help you create your ability to create your product." Putting that together in a client engagement leaves the client with a legacy of not only product and software, but the ability to create product and software. That's where we are able to provide something unique.
After Work Activities
Q: What do you do for fun outside of work?
Andrew: Apart from reading books about Agile, two of my passions are yoga and Argentine tango. I've been doing yoga since 2008, and it's kind of a funny story encountering that. I had taken my boys trick-or-treating, and one of the neighbors asked if I would stop by after I was done for the evening. So later I dropped my boys off and sat with the neighbors and chatted for awhile by their fire pit. We talked all over the map, and then my neighbor said, "I think you'd really like this yoga class I'm taking. Why don't you check it out?" Okay. So, the next day I got online. It was the first of November, and they had a class starting the coming week, so I called up the studio and said "Hey, I'd like to come in," and since then it's been fantastic.
I've noticed yoga, along with other mindfulness practices, enhances your ability to be present in the moment, and be aware of what's going on around you, both internally and externally. What I've found, particularly now as an Agile coach, is that practice has made it possible to be very in tuned with what's going on and to not deal with it reactively- but rather to respond proactively. That gives me a lot of ability to work well and stay calm, even for what some people might be a very intense situation.
And then, shortly after I did that, I also joined Toastmasters, which develops public speaking and leadership skills. I've been part of Toastmasters for quite a while, done quite a bit of public speaking, which has also contributed to my personal skill set. Toastmasters is also a fun bunch of people to hang out with.
My other hobby is Argentine Tango. Three years ago, when my then fiancé, Suzanne, moved to Cedar Rapids, we started looking for some kind of social dance we could do. We tried some salsa dancing, but the timing didn't work, and that particular set of teachers wasn't entirely compatible for what we wanted. Then Suzanne found this notice down at a local arts organization for Cedar Rapids Argentine Tango club that meets every Thursday. So we were like, "Wow! Let's try that. That sounds like fun".... and it turned out to be a really nice, welcoming community.
I don't remember whether it was on our way to or from the first lesson, but we had the ah-ha moment of "We're getting married in 6 months and Andrew doesn't know how to dance. What if we could have an Argentine Tango as our wedding dance?!" When the community heard about that, everyone wanted to help. The teachers were so sweet, they even invited us over to their house to practice in their basement. There was also this lovely French couple that came in and taught a workshop late in the summer. They commented on how motivated "that young couple" was. It made us feel really good, because we were both around 50 at that point. So we have been regularly going to lessons, but it's a constant learning process and there is always something new. The comment that people make is that Tango is a journey not a destination. There is always an aspect of learning. When we went out to Seattle and attended a class called a practica, which is essentially a practice dance class, the dancers were REALLY good, and it was really intimidating. But it's good for you to put yourself in that situation of "I don't know what I'm doing."
So Tango has been really good. Argentine Tango is an improvised form... so, it's not learning the specific sequence of steps. You learn phrases, but then your goal is to respond to your partner and the music with an expression. In some ways it's more like poetry than something very structured. There are days in which I only remember three things and I feel really inadequate. And, then there are other days when I remember this, and this, and this, and then I have forgotten my partner. They'll tell you that there are three things that are really important in Tango- the most import is your partner and your connection with your partner, the second is the music, and the third thing is the steps. They'll tell you the basis of Argentine Tango is walking. I never realized how much there was to walking.
If you were wondering what Andrew shares in common with with President Obama, it's the Argentine Tango (you can watch the clip here). That wraps up our Q&A with Andrew Smith. Has your company recently started Agile? What did you have to overcome in implementation, or was it smooth sailing? Are you thinking of implementing Agile and would like some help? If you have questions or are interested in learning more about what Agile can do for you, reach out to us here.