One of the “showrunners” of Prominent, Development Team Lead Kyle Kapsch is responsible for ensuring consistency behind-the-scenes to save you time, and headaches, in the future. And with over 10 years of experience in software development, Kapsch has a knack for seamlessly managing teams working on complex solutions.
Check out the Q&A with Kapsch to learn more about his role at Prominent as well as to gain insight on his philosophy for effectively managing development teams.
Let’s start by having you describe your day-to-day work at Prominent.
In general, I work with the other delivery team leaders to streamline the many processes that it takes to build reliable software. In this leadership role, I help develop processes, tools, and our intranet with the shared goal of improving the work experience for all at Prominent.
On an average day, however, I probably write six to seven hours worth of code. And in one project I hold an architect role, where I help set and enforce technical standards and work with subject matter experts to design solutions.
What programming languages have you used in the past?
I work primarily in Java or C#, but I have written some applications in ForTran and in COBOL.
So part of your role outside of coding is overseeing processes. In your opinion, what’s the most important thing to look for or check when reviewing another team member’s code?
Consistency.
In television, many writers are used to creating a script and then different directors direct different episodes. Each of these people involved influences the story in their own way. But in order to make sure the story is being told with one voice, a showrunner does the final pass-over, the writing and editing.
This is something that code reviews facilitate. They help ensure that the ramp-up for project enhancements or maintenance of a project is shortened because the project was written with one voice.
How do you motivate your team?
Intrinsic motivation is best sparked by growth opportunities and empowerment.
In your opinion, what distinguishes a great software developer from a good one?
I’d like to tell you that it is 10,000 hours of work as popularized by Malcolm Gladwell’s book Outliers. However, there is more to it than five years of full-time work. While this dedication will likely define a good developer, a great developer needs to be able to pick up on new technologies and design patterns quickly while also applying lessons learned from previous projects to new projects—even when on the surface they do not appear to have commonalities with one another.
Software developers need to work on their soft skills as well as their technical skills. As a consultant, this is doubly so. We need to be able to give good advice in a way that is easy to understand.
What is one of the biggest challenges you face as a developer?
Time. The industry is advancing rapidly, and every hour you put into researching one language, framework, or cloud service is an hour you won’t have for learning about another. Luckily, there are experts that I rely on to help widdle down the number of different options to a few viable candidates.
What do you enjoy most about your job?
I work with some amazing people. People who strive to do the best job possible and help me to do the same. Beyond that, my favorite part about being a software developer is that there are always challenges waiting for you.
Lastly, what are some of your favorite activities outside of work?
I enjoy reading a good book. I’m a big fan of the computer and tech-themed books that are published by Manning, but I also like a number of fiction books too.
I also play a lot of video games; I like games that tell a good story and let you influence how that story goes.
Lastly, while it may not be sunny all year round in North Dakota, I enjoy boating, fishing, and riding motorcycles when the weather allows.