The Power of Customization: An Interview with OpFocus’ Favorite Trailblazer
Having graduated years apart, MJ Kahn and I likely would not have ever crossed paths at our shared alma mater, Smith College. Plus, she was mostly hanging out in a barely yet invented computer lab and I was mostly hanging out at Amherst College frat parties.
Now colleagues at OpFocus for 2 years, I’ve been delighted to work closely with the first person to graduate from Smith with a degree in Computer Science. That’s not the only reason why she’s a trailblazer. As the VP of Development and Product Delivery, MJ is leading the way as a very modern kind of developer, with a perhaps surprising combination of strengths.
Like many experts in her field, MJ designs and builds entirely customized, complex applications from scratch. But she also always gets it right. I mean always. Which means she’s also incredibly effective in hearing the business needs of a client as well as the intangibles, such as the larger context in which the project will take place. She’s also the person to tell hilarious stories or listen kindly or say exactly the right thing when you need it.
I sit down with this dynamo and discover she uses a lot of metaphors. At one point she says “Like an artist…I’m not an artist, but like an artist…” Well despite the near miss with the English major back in the day, I’d say she’s found her own poetry in her daily work.
Here is the transcript of my interview with MJ:
Astrid Domenico: Amazing story regarding your college degree.
MJ Kahn: In high school I had been into computers. I wasn’t exactly what you’d consider cool, and I was determined to change all that in college. I loved writing, and had been told I was pretty good at it, so I decided to pursue an English major. English majors were very cool, and the literary magazine was the coolest of the cool, so I joined that too. With English majors, it was their analysis and discussion that intrigued me. I wanted to be able to see the symbolism, metaphor, and imagery that they could see so clearly. But then I submitted a piece for publication to the magazine, and submissions were reviewed without the author’s name. I was able to listen to the analysis, sitting in the room while these women assessed my piece as an intentional imitation of Wordsworth. I nodded along with the rest of the group, thinking the whole time, “Who the heck is Wordsworth?” A week or so later, I changed my major to math. I figured with numbers, you just about always know when you have it right.
AD: So you didn’t graduate with a degree in English! Or math. You designed an interdepartmental major from scratch?
MJ: It was mostly math and physics, with a Logic course from the Philosophy department and a couple of Computer Science classes at UMass. I had advisors and professors helping me, but it was really about what I wanted to study.
AD: You just visited Smith. How’s Computer Science doing these days?
MJ: I went back for my 30th reunion. The buildings on campus that are dedicated to various types of engineering are mind-boggling, and the advanced work that the students do…things you expect PhD students to be doing, and they’re 19, 20 doing this advanced research. It would be more than a little bit intimidating to know what they’re working on.
AD: Advanced partly b/c technology is so advanced? They grew up with the internet, they haven’t not known it.
MJ: I am a little concerned that they’re not learning the basics. Like I took a course in micro-processors, how to build a computer. What was great about that was I was working at a really basic fundamental level and got a good grounding in how computers work.
AD: Is it still helpful to learn that kind of stuff?
MJ: I face challenges at work practically every day in which the solutions can be traced back to that fundamental grounding. How to think about systems, needs and solutions.
AD: What are some of your traits and interests that got you here?
MJ: I like knowing how things work. That’s one of the things that helps from a programming perspective and also helps from a business requirements perspective. Understand how the business works so we can understand how the software has to work. Detail oriented is a big part…if you ever saw my home you wouldn’t believe it but there’s a desire for a sense of order about programming. Where you don’t just say, “I’m going to write it top to bottom, start to finish and it’s done.” You look at something and you analyze what is the most efficient way that you can write this in the least amount of time. It’s not just take the first thing that comes to mind. It’s analyze and collate, then add a semblance of order and structure to something, and then make it work.
AD: I’m surprised that it’s so subjective. I would have thought it’s more like zeroes and ones, just one answer. But you’re saying that’s not the case.
MJ: Like creating a new custom field in Salesforce.com, there are a lot of names you could come up with. Some are better than others, some are massively better than others and some that you’d say whoever in their right mind would name it this?
AD: Good point. There isn’t one way to do any of this. Considering that, it’s humbling that there is so much trust in us from our clients.
MJ: It’s like when you go to the doctor. The doctor has expertise in this field. You’re going to look at the same x-ray the doctor looks at and to you it’s just a white cloud on a dark background. You can’t see what they can see. The doctor is going to point at something on the x-ray and say “This is the problem”, and you try to nod sagely.
AD: Sometimes the client can verbalize in your language what they want, but their main concern is: Is what you build going to do what we want it to do and is it going to backfire in a year? Is it scalable? Is it going to last? I would think in development, clients often won’t even know what questions to ask, which exposes them to more risk. Certainly there are plenty of other professions that boil down to “you’re going to just have to trust me”.
With development work, Salesforce.com has certification programs. Is there any other way to determine the capabilities of a developer so clients can protect themselves?
MJ: The certification program tries to do that as best it can. Really the way to test someone is have them sit in a room and give them a coding exercise, have them write a solution based on what’s in their head, and then justify to you why they did what they did. There are companies that do this before they hire someone, OpFocus is one of them. Give candidates a project to prove they can do what we require for the role.
AD: The MJ certification program? Developers have a reputation for being heads down working on code all day. That’s not even half of what you do.
MJ: Well I used to do that when I was an independent. I worked from home, mostly alone. What brought me back to working at a company was that every now and then, I’d realize that I had just spent 3 days working from home and the most meaningful face-to-face conversation I’d had during that time was with the check-out person at the supermarket. Programmers don’t have a reputation for being highly sociable. It’s probably not a coincidence that online chatrooms were invented by programmers.
AD: You have an incredibly social position, and certainly as we grow and you manage a team of people. And you’re dealing with our clients all day. So you are doing less and less of what you were doing when you started. Is this a new breed of developers?
MJ: The things that I enjoy doing today, I don’t think I would have enjoyed doing 30 years ago. Solving technical problems, yes. I did a bit of presentation. I was way too nervous to talk to customers back then, that took a long time. I’m lucky to have had jobs to push the boundaries of what I’m interested in, and to help me develop new interests.
AD: What’s exciting to you about Salesforce.com?
MJ: The extent to which you can customize a system. The breadth of problems we can solve with this is really cool. Even the hoops you have to jump through, like governor limits, are kind of frustrating but also cool. It’s like an obstacle course, there are times when you’re writing code and it feels like that. Getting beyond the various hassles and getting the code to work gives you a great feeling of accomplishment.
AD: How is this different from systems that came before Salesforce.com?
MJ: The first system I worked on that was comparable to Salesforce.com was Sybase. It was extendable in that it was a generic database without much built out, and you could store pretty much any kind of information. But it always involved design and custom coding, really no point and click configuration. The amount of customizing you can do without writing any coding at all in Salesforce.com is just amazing.
AD: What project have you worked on lately that was a game-changer for our client?
MJ: The custom portal work I am doing now…we are expanding far beyond the functionality they already had, it will increase their business considerably, directly. But equally important, it has been great to watch a client realize that they have a real partner with us. We haven’t just taken requirements, gone away and built something they don’t understand. There have been a lot of conversations, helping them understand the business problem, asking questions that go beyond how the application will work, and talking through the best options. That’s the real value.
It’s Your Turn
Who are some of the trailblazers in your company or life? How have they impacted you or your company? Please share your thoughts in the comments!