Jim Holmes, Telerik Developer Expert for Test Studio, talks about software development in the enterprise.
This post is the second in a series featuring our Telerik Developer Experts, community members who represent the best of our products. Read our first post, and meet more Experts here.
What’s your background, professionally?
"Eclectic," in a word. I spent 11 years in the Air Force maintaining radars while flying on surveillance aircraft, plus I managed small computers when I wasn't flying. Since then I've spent time in pretty much every role in software delivery and maintenance: customer relations, support, development, program management, testing. I also worked in wine retail for six months. Lousy pay, best homework ever.
Where are you based and why?
I live in Ashland, Oregon. We moved here in May of 2015 in order to be closer to my family and California, plus we live on the side of a mountain and can easily walk into town. It's a wonderful change from 14 years in the very flat Midwest.
With whom are you working?
I'm an Executive Consultant with Pillar Technology. I also have my own consulting business, Guidepost Systems. Both of these allow me to do neat engagements around testing, quality, whole-team software delivery, and communication.
What projects are you working on now?
I've spent the last year helping a Fortune 10 auto manufacturer modernize their testing practices as well as change the company's overall software delivery processes. I've been working at the strategic level with their Quality Center of Excellence, plus I've also been in the trenches with one specific program team.
I also work with several other project teams across Pillar to help support changes in testing, quality and delivery.
What’s the most interesting project you’ve done recently? Tell us about it!
Without a doubt it's the tactical level program I'm on right now. That team has totally transformed how they've worked in a very "traditional" environment. Instead of slow, outdated processes they've fully drunk the Agile KoolAid and are shipping frequent high-quality releases. We've currently zero bugs in production! More importantly, the testers have exploded in their skills. It's really fun to talk through new concepts and watch them implement things. They're also at the point where they're solving their own problems, which is incredibly wonderful.
I spend 50% of each month away from my family while I'm on-site with this client. I've repeatedly told them I love getting on the plane to fly to work because it's an amazing environment. Without a doubt it's the best project I've ever been on in my entire career as a software professional.
What are some challenges you are encountering now in your work?
Two things: Basic craftsmanship skills and horrible tooling at clients.
Software craftsmanship is always the hardest part of any project. It's a constant struggle getting developers and testers to be proficient at writing maintainable software. Our industry and academia both fail at getting newcomers properly introduced to things like SOLID design principles, testing, communication, etc. It's a long, slow process.
Which of our products do you use and why?
I've been a long-time user of Test Studio (I was the Evangelist and later Director of Engineering for Test Studio some years back!) and I continue to be a huge fan of it. Its ease of use and power are extraordinary. It's a great tool for organizations using whole-team delivery: Testers can quickly write flexible, valuable tests, then pair up with developers to write a small amount of code for setup/teardown, database interactions, etc. Plus, it's just flat fun to use, which is sort of a shock in our industry.
I also use Kendo UI controls for demos, workshops, and training. I've been focused on testing for quite awhile, so I don't have time to relearn dev skills every time I'm trying to build training material or prototypes. Kendo makes it a snap for me to quickly get great functionality wired up without a lot of hassle.
Finally, I'm looking forward to playing with the Xamarin controls very soon. I'm building some training videos for the Test Studio folks and I'm excited to dig around and kick the tires with the Telerik Xamarin controls and Test Studio's mobile test features!
What’s the biggest software pain point, in your opinion, in the mind of your partners/clients?
For the delivery teams it's ease of adoption. How long is it going to take us to learn how to use the tool/framework/whatever? Secondly, is it flexible enough to let us evolve the software we're building? What sorts of dead ends and speed bumps will we run in to?
The business side of the house in our clients are always worried about speed of delivery and quality of releases. I'm engaged with Fortune 100 and Fortune 10 clients. "Speed of delivery" for them is dramatically different than startups; however, it's a similar fundamental for them. How can we get our teams more effective in how they're building and releasing software? What tools can we leverage to help out with that, and how do we avoid getting trapped with tools/frameworks/etc. that are in a constant state of flux?
Huge organizations also have less tolerance for risk. Deployment of releases and their dependencies is often a huge workflow, so quality is actually even more important than in smaller, more nimble organizations. That surprises many people I talk with, but look at it this way: How would your mindset about what you're building change if you knew it would be weeks or even MONTHS to deploy a bug fix?
Thankfully these large, slow moving organizations are finally beginning to change and adopt somewhat faster, leaner practices. Slowly.