At Software for Good, we like to say “we use our superpowers for good” — applying our expertise in software engineering, design, and strategy to build technology for positive impact. Kevin Bullock helps ensure that our development work is meeting our clients’ mission-driven needs, as a senior application architect and now, as our Director of Engineering.
Kevin talked about what that title change means, and how his work connects to building software for good.
How does your job connect to what we do for clients?
Part of how my job connects to what we do for clients is ensuring that we are developing quality software for them, that meets the needs they have, or that fits the use and product that they’re trying to create.
It’s also about setting us up as a team to succeed in developing a product in a way that’s an efficient use of our time and is maintainable. It plays a role in keeping clients’ costs reasonable, and in our ongoing relationship with the client and the ongoing maintainability of what we develop for them.
The other way that my job connects to what we do for clients in a broader, more strategic sense for the company is shaping how we develop things for clients — helping shape the makeup of our team, helping shape our process, and helping clients understand it.
How does your job connect to building “software for good”?
Of course we want to build good software, so all of the stuff from the last question applies, but I would say part of my responsibilities as Director of Engineering are to look for the ways that we can use technology to make an impact in new ways, and to help our clients envision what that can look like in their domain.
It’s also keeping up with the trends that are happening in the tech industry as a whole — to help us as a company think about where we see tech being used for good, that we can pick up and run with, and where we see tech not being used for good, and continuing to understand the difference.
You can follow good engineering principles and still work for, say, a defense contractor. That said, we want to have the greatest impact that we can, and so in order to do that, we need to follow good engineering practices. We need to keep our eye on what the end goal is so that we’re not getting stuck in the technical needs, but are able to pivot a project if we need to in order to get to the impact that we want to make.
What does becoming the Director of Engineering mean for your responsibilities and day-to-day work?
The biggest impact on my day-to-day work is that I now have regular one-on-ones with the whole engineering team. Apart from that, my job is pretty much the same. I was already doing a lot of mentoring, which happens outside one-on-ones, in the context of actual software development. The one-on-ones are more managerial, a chance to check in about how developers are doing, goals, professional development, all that kind of stuff.
What’s your favorite part of your job?
I like many parts of my job, but one of my favorite parts is collaborating with other developers, whether it’s mentoring, helping people learn the next thing or figure out what that next thing is in their career development, or working to troubleshoot a problem.
What’s been your favorite Software for Good project so far?
There have been many good ones, ones that I enjoyed working on technically, ones that I’ve enjoyed working with the team. But I think my favorite project overall was the Housing Hub project, because it has a clear goal for impact on people’s lives, it was a large project that we were able to organize a team of several people around, it was a client that was really well involved in the development process and understood how we were trying to develop it. A lot of different pieces came together on that one.
What do you wish more people understood about software engineering?
That technology may or may not be the right solution to your problem. Throwing more software at a problem doesn’t fix it magically — but it’s often worth spending the time, money, and effort on a technical solution when you can have a really big impact.
What excites you about the field of software development? Are there trends you’re excited about?
I’m excited about the new crop of programming languages that has come up in the past few years, that are bringing what have been more academic concepts into the world of everyday programmers. I’m excited to see the new possibilities that that opens up in terms of the impact that we can have with software development.
I’m also excited to see robust conversations happening around the ethics of technology, and how we use it and where we apply it and who it benefits.
What kinds of projects are you hoping to work on in 2020?
I am excited to work on shaping our team more, on growing the organization and the size of projects that we can do. I’m excited to work on a bigger project than we’ve done before.
Anything else you’d like to add?
What I’ve been saying about my change in title is that it means more day-to-day in terms of the impact to Software for Good, than it does to my role. This represents a shift in how we are organized as a company, and so it’ll be interesting to see how we can collaborate on the future direction of the company.