In this episode, Leo talks with Kim Arnett about her interviewing and hiring experiences and what she's learned to improve the process for the candidate and the company as well.
An exploration of Apple business news and technology. We talk about how businesses can use new technology to empower their business and employees, from Leo Dion, founder of BrightDigit.
Leo: Welcome to another episode of Empower Apps. I'm your host Leo Dion. Today, I'm joined again by Kim Arnett. Hey, Kim. Thanks for coming back.
Kim: Thank you.
Leo: Go ahead and I’ll let you introduce yourself, Kim.
Kim: Sure. Thank you for having me on today. I'm excited to talk with you. My name is Kim Arnett. I’m a senior iOS developer. I've been an iOS developer for about eight, well, just over eight years now. I pretty much started on mobile which was really exciting. I actually got my start in Android and I quickly switched over to iOS. I just fell in love with the platform, fell in love with the products. So, yeah, never really looked back.
Leo: I actually didn't know that you have done Android development. That's interesting. How long ago was that?
Kim: Yeah, long enough ago. My education was actually in Java and when I was looking for my first job there was this huge market for mobile developers. It was still so new that there just weren't a lot of people out there that had any experience in it so when I went to eastern I was actually a part of this initial mobile class which I actually did not do well in. But that's another topic for another day. And so, yeah, I got some experience in Android and iOS through that. But Android came more naturally to me because it was in Java and that's where my education was so it was an easier starting point. I actually had an Android app published to the Google Play Store at one point.
Leo: Is it still there?
Kim: No. It was there far past its time. There are so many updates that came out and finally Google pulled it because I wasn't doing any updates which was fine. It was not an insult at all.
Leo: You were telling me that you were doing a recent push for hiring at your current place and you wanted to talk about hiring and what you've learned a lot recently as far as some of the challenges that you've faced and things like that. Yeah, I guess we'll just jump right into it. What have you learned recently as you've been doing a lot of hiring and interviewing lately?
Kim: Yeah, absolutely. This was something as eight years in the industry, I've had my fair share of traumatic experiences as one could imagine. I mean it's nothing too crazy. There's plenty of stories out there. A lot of people have the same experiences whether it be freezing up in a whiteboard interview, or being asked questions that are way outside of your job description, being set up to fail essentially in your interview. And as somebody who struggles with anxiety and has my entire life, it brings a special challenge to an interview because I've learned to live with my anxiety. But I certainly have triggers and interviewing is definitely one of those. Any high stress situation I just completely shut down. I mean, that's kind of the back story. This past experience was my first time really diving into the other side of the table. I've been pulled into interviews before which we can talk about a little bit more. Some of them have good experiences, some of them not just from observing somebody who asks occasional questions.
But, yeah, this recent experience I was given the opportunity to ask basically what it's going to look like, what is our current process, what are the benefits, what are the downfalls? What can we do to really make this better? We essentially took pieces of what they had in place. This is a new team so I had no say in what was there previously. But I certainly had to say going forward right as a senior iOS dev now. I said we're not doing HackerRank. We are not doing these arbitrary code tests.
Leo: What was the first word you said? HackerRank?
Kim: Yeah.
Leo: What’s that?
Kim: It is an online tool that allows you to present code challenges. I don't know if it's live. I know there's a test feature that you can go through these challenges on yourself. That's how a lot of people will practice.
Leo: Okay, okay.
Kim: But there is an interviewing aspect of it that like some use in the company. I just don't know what that looks like but I’m not touching that with a 10-foot pole. I am terrible at code tests. It's not an accurate description of what my abilities are or what a candidate's abilities are. I just feel there's so much badness there. It's exclusive to self-taught devs. It's exclusive to boot camp devs. It's relying on this computer science knowledge that you really have to dust off to even dive into. It’s not cool.
Hey folks, I wanted to let you know about my app Heartwitch which is available in the App Store today for the Apple watch. Heartwitch is completely free but for Empower Apps users I'm giving you access to Heart Twitch premium for three months free using the code EMPOWERAPPSMARCH. That's right. Use the code EMPOWERAPPSMARCH to get 3 months free of Heartwitch premium.
What's Heart Twitch you say?
Well, if you're a live streamer whether it's playing horror games or doing any sort of exercise you might want to share your heart rate while you live stream. Sometimes even on occasion I want to share my heart rate while I'm nervously trying to figure out how to do some coding in Xcode and live stream that. Well, sign up for Heartwitch and then upgrade to the premium account and use the code EMPOWERAPPSMARCH to get 3 months free. With the premium service you get OBS, browser source, URL sharing, extra styles and unlimited streaming. Try it out and I'd love to hear your feedback on the app and let me know about how this Swift app that I've built for the watch and for the web works for you. Again, try Heartwitch for 3 months free using the code EMPOWERAPPSMARCH and let me know what you think. Thank you so much for trying this app out and I look forward to hearing your feedback.
Leo: What kind of questions would you ask then to figure out if somebody is a good hire?
Kim: We decided to go with a code pairing challenge. I think I can dive into this because we're done hiring on my team for right now. I don't want to give too much away. Instead of having this code test and seeing the basic knowledge that they have and, I mean, people claim that they can see problem solving through these, we decided to do a code pairing challenge. So we have a basic iOS app set up. It is completely blank. There are some data sets in it but outside of that it is completely blank, completely new. The candidate is welcome to use whatever they're comfortable in. So off the bat you're setting them up for success, right? You say you can use Storyboards, you can use UIKit, you can use SwiftUI, use whatever you would normally use to develop this app. And basically we just go through steps of building a simple app. Nothing crazy. The milestones that we are expecting you to hit change based on your experience level. Somebody more senior we would expect cleaner code out of them, maybe some thought behind some architecture patterns, things like that, right? But we're not expecting this whole full-fledged app.
The primary thing that we're looking to get out of this is how you talk to us, right. Can you talk through problems with us? Can you take our suggestions? Can you iterate on things and take feedback? Can you give us your thoughts if you disagree? So it's more on the people's side of it even though we are diving into code. I just generally don't care much about how you code. Anybody can learn anything as long as they're willing.
Leo: Okay, okay. Yeah, I mean, I agree totally. I think the whole thing is about needing to communicate. Communication is so key especially for a more junior developer. I think the book knowledge stuff it's still a bit over emphasized but at the same time having that experience of knowing how to learn more than necessarily what you know I think is important with a senior developer. Does that make sense?
Kim: Yeah, absolutely.
Leo: But I totally agree with the whiteboard stuff or just asking people quizzes. I just remember as a .Net developer being asked all these questions about C# that for all purposes now I think is outdated. Why would you ask very specific technical questions about how to do stuff when you're kind of interested more in their ability to be agile and learn new stuff and just kind of like that over just basic technical knowledge. That's what you're talking about right when you're talking about these computer sciency questions, right?
Kim: Yeah, like, what are the four pillars of object-oriented programming? That's one that is always asked for some reason.
Leo: I don't know the answer to that. First of all it's an outdated question too. Object-oriented, that's just this: people know it without knowing it. You know what I mean? The industry has moved beyond object-oriented programming in a lot of ways.
Kim: Yup, yup. Yeah, it's such a pain point. And especially with some of these code challenges and interview questions that I see companies throwing out there and it's like what are you trying to gauge by asking this?
Leo: What do you think is the reasoning behind it or why do you think? I have my own opinion but I want to ask you first. Why do you think they do this?
Kim: It absolutely feels like a power trip. That's exactly my take. I think to some aspect I think it's well these were the questions that I was asked. Okay. Well, does that make it okay first off?
Leo: Right, right.
Kim: But second off, I've seen people just hang candidates up to dry and then just say, “Well, they don't have what it takes.” Okay, but you didn't guide them at all. You gave them a question that with two years in the industry at this point in time I would have problems with answering. So that made me feel like I should even be here. Yeah, it feels like a power trip. I have no other explanation for it.
Leo: I mean, I think there's a disconnect between HR and the people who do the actual technical hiring too. I think you posted that tweet recently with the job description just the thousands of things that they put on there. And it's like, well, we want to find the ideal candidate but when you post these ridiculous postings with thousands of things you're just going to get people scared. Well, me personally looking at it looks to me that this is a company that doesn't know what they're doing. So that makes me not want to work for them. I think there's that disconnect between HR. We talked about this on an episode with John Knox who does a lot about the stuff with iOS developer jobs and things like that and just how… Maybe we can get into it like there's particular challenges I think that HR and technical folks have with iOS development hiring in particular, right?
Kim: Yeah. There's definitely a large disconnect and that's true for pretty much every company I've been with. That job posting I posted I actually worked at the previous company which is why it came up on my radar. This is like, “Oh ,you might like but yeah…” Yeah, it's absolutely ridiculous and I have worked on teams before that have had similar job postings. I've called out like what are we doing here? I don't even know half of this stuff and these are completely different wheelhouses and I was told, “Well, we want to not turn anyone away but…”
Leo: It’s more intimidating than welcoming. And I think people don't get that.
Kim: Yeah, it’s like… Yeah, I don’t even know.
Leo: Was there anything particularly challenging with iOS development like hiring folks? Because one of the things I see is, and I’ve seen this before, you have to have knowledge about this particular framework that people use and it's really, really specific. Without any sort of knowledge that hey… You want to hire people that can learn this stuff, not people that already have knowledge of it because that's just going to make it more difficult on you. And you might end up with someone who's less flexible in a lot of ways, right?
Kim: Yeah. I mean, throughout my career and especially in mobile, things change so fast. We are constantly learning. After Swift came out it was like a complete change, right, totally new language, totally new paradigms. We spent time learning that. And now that I feel like we have a master on that now SwiftUI comes out. Things are always going to be changing. In the mobile space there's also other products right, wearable, the TVOS stuff, there's smart cars coming out. All of that falls into mobile to some extent. Honestly, that's the biggest skill that you could have as a developer is how you learn. How do you learn best? I don't expect everyone to know everything. That's impossible. And I get so frustrated with hiring managers, not just hiring managers but hiring developers that do expect that. Well, they didn't know what this was. Okay, but they taught themselves how to build out this app surely. They could use Google to look that up.
Leo: Right. Well, I don’t know if you know this, but surgeons when they're having surgery they'll commonly Google stuff up because they don't remember every little thing. I don't know if you knew this but it is pretty common knowledge during surgery sometimes like doctors and surgeons will look stuff up.
Kim: Sure.
Leo: I think if they can do that I think we can use Stack Overflow. I think we're okay.
Kim: Yeah. That’s another aspect of the interview that we included too. You are welcome to use whatever you need to get the job done. You're welcome to pull in frameworks. You're welcome to use Google. You're welcome to use Stack Overflow. You're welcome to use interviewers. Whatever helps you get the job done it's up to you.
Leo: Yeah, it makes total sense.
Kim: Yeah. I mean, so one of my first interviews, and it was like one of my favorite interviews I've been in to date, as for my first job it was like the one thing they did right I will call out. But they told me ahead of time as a part of your inner self, and as somebody with anxiety again, this was so key to me not working myself up and being able to actually function. But they told me ahead of time what to expect from the day and also we're going to have a two hours coding session and it's going to be a basic input output app. Well, as the interviewee I don't expect to know what's on the quiz, right? But having an expectation for the day was extremely helpful because I can say okay this morning it's not going to be very technical. We're going to talk with the hiring manager, maybe a director but in the after… And this is like back pre-COVID full day interviews, right. And then, after lunch we're going to dive into technical stuff and prepare mentally for that. And that was a total game changer. I went into the day with a clear head, my coding challenge was a simple input/output app. I had a text field and I had to output the text into a label. I finished it in 10-15 minutes. It only took me that long because it wasn't on my machine, right, there were shortcuts that I wasn't used to and things like that. But just having that expectation was a game changer, and I really want to pay that forward as an interviewer now. I want people to know that I fully support you and I'm not hanging you out to dry.
Also, in my first job I was in a conference room and a hiring manager that I knew, he wasn't my hiring manager, but he walked in and I said, “Do you have this conference room?” He's like, “I have an interview but you can help me out with it if you want.” I was like, “Okay, well, I've never been on this side of the table before so this could be fun. And he sat in and a candidate fresh from college came in and they were talking and I was just working in the corner half listening and he gave him a whiteboard problem. And it was radio silent for an hour while he worked on this whiteboard problem. It was so uncomfortable being in that room as somebody who wasn't even a part of the interview but also as somebody who was still very new in their career and still very imposter syndrome, right? I still suffer from that. I still suffer from that. But it was very high at that moment in time for a lot of different reasons. But seeing that experience was terrible. And then, he made it through the problem. The candidate made it through the problem. Then what happened, they talked for a little while about the solution and he went on his way. It was about an hour, maybe an hour and a half. I don't quite remember. And then, the hiring manager asked me what I thought. I was like, “Well, it sounds like he got to the solution and sounds like he talked through the steps afterwards.” And he said, “Yeah, but I don't like it for this reason, this reason, and this reason.” I just couldn't help but think, well, if he wasn't on the right track why didn't you say something? Why didn't you point him in the right direction or tell him what you expected. There were no expectations out of this.
Leo: Oh yeah. Especially if there's radio silence on a whiteboard problem like that.
Kim: I just think about that experience. I think about experiences I've had one whiteboard problem that pops into my mind as if I was doing some math problem or some algorithm problem. I wasn't sure what was expected and I asked the question and all I got back was, “I don't know? Is it?”
Leo: Yeah, I've done those before. It comes across as, I don't know how to put it.
Kim: Arrogant?
Leo: Yeah, arrogant. But I think they justify themselves by saying, “Oh, if the candidate really wants the job they'll do the best job possible.” But I feel like you end up hiring very, I don't want to say arrogant type people but people who kind of think they're know-it-alls. You know what I mean? People who just don't have… Because a lot like if we… I feel like being in this drum quite a bit. Like part of programming is communication and with other people because nobody builds apps all on their own. I mean, there are indie apps right. But I mean, if you're looking at getting hired obviously it's going to be communication is a big key and part of that. If you take that out of the equation and you just expect somebody to do a sorting algorithm on a whiteboard that is not going to help you with half of the work that this person is going to be doing on your team.
Kim: Absolutely, and there's so many problems that come out of that too with not funneling for communication. I've seen time and time again people like well our developer can't talk to our designer or our developer keeps pushing back on management. They're hard to work with, right? Everyone's heard that.
Leo: Right. But that should be part of the interview process to figure out if someone is so and so it was hard to work with.
Kim: Right, yeah.
Leo: That’s unfortunate.
Hey folks, I want to let you know that today's episode is brought to you by AppFigures. Did you know that better ratings have a direct impact on improving your app's visibility and on driving downloads? Stronger ratings signal that an app has happy users. While there are other factors, app stores tend to float these results higher in search results as more users find your app. They're also more likely to download it when they see social proof. Learn when to ask for ratings as well as other tips and best practices by signing up for AppFigures’ weekly newsletter at appfigures.com/newsletter. You can check the links in the show notes for more details. I highly recommend checking out the newsletter that they put out. It has a lot of great facts and a lot of great tips to get more traction for your apps. Once you've done that I also recommend heading to appfigures.com to try App Figures for free. If you like it both new and existing users can try our special code EMPOWER3030 and get 30% off for the next three months. Check the links in the show notes for more details. Thank you AppFigures for sponsoring this episode and sponsoring Empower Apps.
Leo: I'm going to ask you this then. I'm not going to ask the question what should a candidate do to prepare for an interview to get hired, but rather I'm going to ask this question, what should a candidate do to prepare for an interview to find out if this company is a good fit for them. Because I think a good interview is two ways, right? It's not just about the company hiring you. Sometimes during an interview you probably have a good feel if this is the company that might be somewhere you want to work. What are some good ways of finding that out?
Kim: Yeah, absolutely. Honestly to an extent I still struggle with this. I've still landed at some bad companies or on some good companies but bad teams so it is really hard to funnel. But with that being said, I do have a list of questions every time I interview that I just continually add to based on my previous experiences. So when I was at my first job and I was looking for my second job, I made sure to write down things that I did not like about my first job that I needed at my second job or going forward. I would make sure to ask those questions in the interview to get the answers that I needed to determine: am I going to be happy here or is this just another pattern re-emerging? I don't know what those questions are off the top of my head because it's been a while. But it might look like what does your day to day look like? If you’re somebody that can't stand meetings and your day is full of meetings, you're not going to be happy there. For me, one of the questions I always ask is how do you prioritize diversity and inclusion.
Leo: Nice.
Kim: Generally, I get some BS answers but that's also a red flag, right? If that's not something they've ever thought about or if the management chain you can ask what the management chain looks like. Not physically looks like but just get an idea of how many levels or tell me about a time where this. But if there's no diversity in the management chain that's also a red flag.
Leo: Asking people how long they've been at the company or how long so and so has been at the company is a good indication of what kind of turnover they have too.
Kim: Yeah, absolutely. This could be a double-edged sword though. If the team all looks the same, physically looks the same, this time physically. If the team all looks the same and they're comfortable and they've all been there a long time, that’s also a red flag.
Leo: Yes, yep. Agreed.
Kim: Yeah, it could totally work both ways. I would urge anyone if you have any experience or even in your group projects or whatever experience you do have, think about what would make you happy, what would make you totally unhappy, and aim some questions to try and uncover what's going on behind the scenes with those. One question that a candidate actually asked me that I thought was pretty spicy but totally fair. They asked me, “What's your favorite part about your job and what's your least favorite part about your job?” You might get some people off guard but those are where you're going to get your honest answers too.
Leo: Yeah, and I think kind of going back to what you were saying, it really depends on what position you're in. If you're already at a job then you're not as kind of desperate to find something right away. I can understand those Situations. But if you're not, be aggressive because this is a place you're going to invest your time in. Pay is part of it certainly but like being no amount of money is going to make you happy at a really crappy company if there's anything I've learned.
Kim: Yeah, absolutely.
Leo: Don’t be too afraid. I feel I'm in a level of confidence now where I feel I can be a little bit more aggressive because I've made those bad decisions working with certain clients. I know I need to be picky about what I do and what I pick. I'm going to be aggressive about the questions that I ask.
Kim: Yeah, absolutely. In previous companies, one example I just thought of going back to, but one thing mobile wasn’t a thought like it was an afterthought. And that was really stressful as a mobile developer who's trying to push. It was a struggle to even get on the latest Xcode or even support the new iOS. It’s just ridiculous fights you know but it was a huge pain point. It was a big stressor for me. One of the questions that I have on my list is how do you prioritize mobile? How do you get to the new iOS? Is this something that is thought about or is it an afterthought?
Leo: Look at what their… Ask them what their staff numbers are and kind of get an idea of the ratio of iOS, or Android, or web developers. That might be a good indication too.
Kim: Yeah, it’s an interesting dynamic. Ask questions. That’s the best indication that you're going to have into their world and what they deal with every day. And then think about what's a deal breaker for you and try and ask questions off of that.
Leo: I wanted to touch base again about communication and how important that is. Was there something else you were going to mention about that?
Kim: Yeah. One thing, we touched on it briefly, but how do you handle developers that can't work with your team members? How do you avoid that in the interview process? This is a topic that came up recently. The more I chewed on it the more it revealed about this particular situation. As a woman in tech, right, I'm automatically a part of the interview process when I'm hiring on my team. That hasn't always been true. Now that I'm in a senior position I'm always going to be there so a lot of the problems that people have highlighted come from developers, male developers, not being able to talk with women coworkers whether it's the designer, whether it's the leadership, whether it's whatever it may be. And that is the symptom of not having diversity in your interview process. This specific instance came out when we were talking about hiring women in the tech community. I had mentioned what we talked about pretty much scrapping our interview process in favor of a peer code challenge like let's talk about the code, let's communicate over it. We already talked about that. And somebody replied to me and said, “Well, this isn't a good indication of how they work with others. We have a developer on our team that won't even talk to our designers.” And at first I was like, “Well, I didn't hire him.”
Leo: Did you say that?
Kim: No. That was my first thought. Why are you replying to me? That's not my problem. But the more I thought about, well, I've definitely worked with those people before. How do you screen those people? The more I chewed on it the more I realized not having a diverse interview process is a red flag for exactly that reason. Even if your team is not diverse, which thumbs down by the way. But let's just say even if your team is not diverse, your company is, there's people out there that do not look like your team or whatever. They need to be able to communicate with them. It might look like leadership. It might look like recruiting. It might look like marketing or whatever so pull people in. Make sure that your candidates can talk to whoever you throw at them. At previous companies pre-COVID, we would have a lunch session and we would throw people in the interview, take the candidate out to lunch and just have a casual conversation. Nothing technical, low stress. But we've definitely had candidates that can't talk to people at all. And while there's a place in this world for very technical people that cannot communicate on a small team, it's not for us. We absolutely need people who communicate. Again, diversity inclusion is so incredibly important but that is a basic stepping stone of how to filter out these, I don't want to use the word troublemakers because they're not causing trouble. But the pain point…
Leo: People with communication issues.
Kim: Yeah, yeah. That definitely leads to pain points on your team.
Leo: Yeah, I totally agree. I've been in those situations where I've worked with folks who just cannot communicate. Quite honestly they're usually some type of person that's been there since the company's been around or like a founder or something like that to where they're just so grandfathered in. It's just a part of the company. It becomes difficult at that point because when you're at a leadership role which essentially they've ended up kind of absorbing then it becomes really hard maintaining that growth in the company over the long term.
Kim: Yeah, absolutely. And to be clear I want to highlight that I'm not talking about people with disabilities or people that might have a condition that doesn't allow them to communicate freely. I’m talking about people that have no problem carrying on a conversation with a male co-worker but somebody that would have trouble communicating with a woman co-worker or any other sort. That's really what I want to highlight. Because I'm one of the core members of our interview team now I'm happy that this would show up. But also I've been a part of teams where there were absolutely no women involved or no diversity whatsoever and you can definitely tell. You can definitely tell the difference.
Leo: Well, thank you, Kim, so much for coming on the show. Where can people find you?
Kim: Sure. Thank you so much for having me. I'm primarily on Twitter. I tweet a lot. That's my warning. But my handle is @kaydacode. My DMs are usually open so you can reach me there. But yeah, I look forward to seeing you on Twitter. Yeah, thank you again for having me. It's so fun to talk about… I'm very passionate about hiring and making the process better. We have to make this process better. It sucks.
Leo: I also had a great time having you on, Kim. Thank you so much for joining me.
Kim: Thank you. Talk to you soon.
Leo: People can find me on Twitter @leogdion. My company is Bright Digit. If you can take some time and post a review to Apple podcast, Google podcast, Amazon, Spotify, wherever you're listening I'd appreciate it. Let me know if you have any feedback as well. You can reach me on Twitter through DMs as well. Thank you again and I look forward to talking to you in the next episode.