Empower Apps

Jaim Zuber returns after over 5 years to give us an overview of looking for a job in iOS development in 2024, how has it changed, what are some things you can do now, and when becoming a manager is the right call.

Guest

Announcements

Links

Related Episodes

Social Media

Email
leo@brightdigit.com
GitHub - @brightdigit

Twitter
BrightDigit - @brightdigit

Leo - @leogdion

LinkedIn
BrightDigit

Leo
Patreon - brightdigit

Credits

Music from https://filmmusic.io
"Blippy Trance" by Kevin MacLeod (https://incompetech.com)
License: CC BY (http://creativecommons.org/licenses/by/4.0/)

  • (00:00) - Welcome and Announcements
  • (02:18) - Navigating the Job Market
  • (20:51) - Transitioning from Engineering to Management
  • (24:09) - Challenges and Strategies in Management
  • (29:50) - Swift Concurrency and Career Reflections
Thanks to our monthly supporters
  • Bertram Eber
  • Edward Sanchez
  • Satoshi Mitsumori
  • Steven Lipton
β˜… Support this podcast on Patreon β˜…

Creators & Guests

Host
Leo Dion
Swift developer for Apple devices and more; Founder of BrightDigit; husband and father of 6 adorable kids
Guest
Jaim Zuber
iOS development, hands-on technology leader, occasional musician, podcaster in exile. He/him.

What is Empower Apps?

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.

[00:00:00] Welcome and Announcements
---

[00:00:00] Leo Dion (host): Hey everybody. Before we begin, I have a few things I wanted to announce. As you can see, if you're watching this on YouTube or maybe you're listening to this on your podcast player, this is the first episode in my brand new office studio. At the time of the recording this episode with Jaim, it was still getting set up.

[00:00:16] Leo Dion (host): So I apologize for some issues with the audio in that episode. Regardless, the contact is fantastic, so definitely check that out. I'm pretty much, I just need to set up a green screen, so hopefully in the next few episodes you'll see that up in my announcements. Next I wanted to say that if you're not subscribed to the Bright Digit newsletter, you should there's some really cool new newsletters that came out.

[00:00:39] Leo Dion (host): Issued 100 went over our top articles, so that if you're gonna get started, that's a great one to get started with to see some of the cool stuff that we've put out. And then issue number 1 0 1. Was about my trip to London and the server side server side, SWIFT conference, and some of the great talks that were there.

[00:00:59] Leo Dion (host): We have videos links to all the videos of all the talks, including mine. So if you wanna know how that went you'll definitely wanna check both of those out and subscribe to the Bright Digit newsletter. Next. I'm still looking for folks who are interested in. Beta testing bushel bushel two. I'm hoping to come at coping to release by the end of the year which will be just in time for the one year anniversary.

[00:01:23] Leo Dion (host): I'm really if you're interested in the development and how that's going, you should subscribe to the YouTube channel because I've been live streaming every 9:00 AM on Tuesday. My time zone, E-D-T-E-S-T depending on whether this is before November or not. And yeah, just go to get bushel.com.

[00:01:40] Leo Dion (host): I'm adding in a screen recording and some stuff there for folks to be able to record the work that they're doing on their VM and take screenshots and stuff. So definitely check that out. And lastly we have a Patreon. If you are really enjoying my content, I would appreciate your support. It'd be greatly appreciated.

[00:02:00] Leo Dion (host): I released these episodes on cut early on there. I might put out some drafts of content that I'm working on, things like that. So definitely check that out as well. Patreon.com/bright digit. All the links will be in the show notes, and that's about it. Thank you.

[00:02:18] Navigating the Job Market
---

[00:02:18] Leo Dion (host): Have a good rest of your day and enjoy this episode, Welcome to another episode at Empower Apps. I'm your host Leo Dion, back from five years ago. We have Jaim Zuber

[00:02:32] Leo Dion (host): from episode 11. Jaim, thank you so much for coming back on. It's been a while.

[00:02:37] Jaim Zuber (guest): Yeah, probably five, five years or so but yeah, glad to be back and I've been enjoying all the stuff you've been posting since then.

[00:02:43] Leo Dion (host): Thank you. So for

[00:02:45] Leo Dion (host): those who don't remember episode 11, could you go ahead, introduce yourself?

[00:02:50] Jaim Zuber (guest): Yeah, so my name's Jaim Zuber. I've been working on Apple platforms almost exclusively, not entirely for, the past 14 years. Started,

[00:02:57] Jaim Zuber (guest): Maybe 2011, mostly iOS, a little bit of Mac here and there as needed, but

[00:03:03] Jaim Zuber (guest): a lot of that was as a consultant. So I was doing independent work, got a chance to work with some really cool apps, especially, in the 2010s.

[00:03:11] Jaim Zuber (guest): Over the past three years, I switched gears. I took a

[00:03:13] Jaim Zuber (guest): leadership role, so I was a director of engineering for a digital bank.

[00:03:17] Jaim Zuber (guest): Did that, enjoyed it, so I did it with kinda a manager slash director slash principal engineer. Enjoyed it, but that ended earlier this year doing layoffs.

[00:03:25] Jaim Zuber (guest): That's a. A pretty common trend throughout the industry of people just being laid off.

[00:03:30] Jaim Zuber (guest): That, that's it in everyone.

[00:03:31] Jaim Zuber (guest): Yeah, I got back to consulting a little more hands-on work enjoying it. Being able to

[00:03:35] Jaim Zuber (guest): write code every day. So I'm doing that now and kind looking for work, looking for a full-time job while doing consulting

[00:03:42] Jaim Zuber (guest): work. And that kind of brings us up into our topic, which we're gonna talk about.

[00:03:46] Jaim Zuber (guest): How do you

[00:03:46] Jaim Zuber (guest): navigate, this job market, which is

[00:03:49] Jaim Zuber (guest): unlike. Most of us have ever seen.

[00:03:52] Leo Dion (host): Yeah, and I've been doing this for 25 years now, and. I've been through recessions, but nothing like this where it's not really a recession, but tech has been hard, parti hit particularly poorly. Just kinda what's your thoughts on what, what's changed? Why is it different this time?

[00:04:13] Leo Dion (host): What, like what are you finding out there?

[00:04:16] Jaim Zuber (guest): Yeah, what's different is we had a

[00:04:18] Jaim Zuber (guest): gold rush for years, a decade. Interest rates were close to zero, so tons of people were fund pouring money into startups. Big tech had just infinite money to spend. Everyone's hiring. And like we all benefited from that,

[00:04:32] Jaim Zuber (guest): Salaries skyrocketed.

[00:04:34] Jaim Zuber (guest): We've all done pretty well in that era. And that ended interest rates went back up. We printed a bunch of money during the downturn and we're paying for that down, trying to keep, the, from, macroeconomic forces. We're trying to keep inflation low, lower, and that's affecting us.

[00:04:49] Jaim Zuber (guest): But we've had a great run. It's just an adjustment right now where we have to. A new type of market.

[00:04:56] Leo Dion (host): Yeah. And part of it, I've seen this as far as a homeowner, I've been affected by the interest rates, So I totally get it. Just buying a new house and then also the fact that I mean it seems to me like AI has sucked all the oxygen in the room. As far as like any tech spending that there is, it's all going towards, yeah, basically ai, AI research people think that they're gonna get a lot of return off of that. I'm very doubtful that it's going to be the revolution people think it is. And I think, yeah, that's made it really difficult. On top of that, I've also just seen issues with basically don't know if it's the term ghost posting, but there's just a ton of posts out there and there's a ton of people applying and then on top of it there's just a lot of garbage as far

[00:05:51] Leo Dion (host): as job postings are concerned, and so it's like hard to navigate that as well.

[00:05:55] Jaim Zuber (guest): That's true. I think, the jobs are out there. I think there are companies with openings. It's just very competitive for the openings that are out there. And like you said, there are companies that just post things to look good. I. Or jobs that they don't, they have no intention of hiring or just don't quite have the budget yet.

[00:06:14] Jaim Zuber (guest): So there, there are a lot of postings that aren't real, but I think the jobs aren't out there. I think the challenge is it's just super competitive. There's way more people looking than there ever have been before. There's tons of layoffs in the industry over the past year or two. HR was big part of layoffs.

[00:06:30] Jaim Zuber (guest): If a company's not gonna expand, they got rid of hr. So we've got a, you've already got, they were already understaffed

[00:06:37] Jaim Zuber (guest): for the past year, even if they're hiring. You got one hr, you got one

[00:06:41] Jaim Zuber (guest): HR person. They're, they were already overworked

[00:06:44] Jaim Zuber (guest): and now

[00:06:44] Jaim Zuber (guest): they're completely overworked trying to hire for this position, and they've got 200

[00:06:48] Jaim Zuber (guest): resumes to look at. Half are not

[00:06:50] Jaim Zuber (guest): real people. The AI generated or some scam, and they have, they've got a, they've got a scan, a resume for five seconds

[00:06:57] Jaim Zuber (guest): and figure out if you're the right person or not. It's just that's the game. That's the game we're in. Three years ago, my resume would get a return call from like 80, 90% of the things I sent for, but that would be like lead staff, principal type things.

[00:07:11] Jaim Zuber (guest): Typically now it's closer to 10, maybe 20,

[00:07:15] Leo Dion (host): Yeah. Yeah. So let's talk a little bit about what you've been doing to navigate that market or maybe even pivot in your career

[00:07:23] Leo Dion (host): as a lead principal, senior iOS developer.

[00:07:28] Jaim Zuber (guest): Yeah let's talk about more

[00:07:30] Jaim Zuber (guest): kind of the hands on things you can do. First thing I did is just tightened up my resume,

[00:07:34] Jaim Zuber (guest): Make sure it was like four or five pages. It was just long and it worked. I had no reason to mess with it. Before, but,

[00:07:42] Jaim Zuber (guest): Now you wanna tie it up.

[00:07:43] Jaim Zuber (guest): You wanna have the stuff that's directly relevant to the job you're applying for right at the top. cause hr, the person scanning

[00:07:50] Jaim Zuber (guest): your resume, is gonna look at the first three below points. And if it's not a match you're done. You know you're out they'll never see you again. It's important to,

[00:07:59] Jaim Zuber (guest): have a resume that's really tuned for the position you're applying for.

[00:08:02] Jaim Zuber (guest): If you're applying for a senior engineer position, your resumes can. be very different from an engineering manager.

[00:08:08] Jaim Zuber (guest): Or yeah, even a staff or lead engineer. If you're a, if you're a senior engineer, mid-level engineer, make sure your hands-on skills are right up front, features that you've

[00:08:17] Jaim Zuber (guest): worked on, stuff that you did, if you're,

[00:08:21] Jaim Zuber (guest): if it's a lead, make sure that leadership's up top, that you've led teams, things like that.

[00:08:27] Jaim Zuber (guest): If your staff principal, make sure that you've been able to show impact like beyond your team. Hey, I helped my whole organization improve their test coverage or whatever. We

[00:08:36] Leo Dion (host): right,

[00:08:37] Jaim Zuber (guest): document improve documentation, which allowed the teams to move faster. Things like that.

[00:08:42] Jaim Zuber (guest): So I've got a different resume for each type of role that I apply for, and I think.

[00:08:48] Leo Dion (host): There's just so many positions out there that seems like a lot of work to have to if I'm gonna apply to 10 or 20 positions to have to make 10 or 20 resumes, is there a simpler, more optimal way to do that?

[00:09:01] Leo Dion (host): So you can. Apply to a lot of positions, but the same time, like not waste time because like you could end up basically not going anywhere with it because, I'd rather have more applications, more resumes posted than necessarily making every single one Perfect. If that makes sense.

[00:09:20] Jaim Zuber (guest): Yeah, you're not gonna rewrite your resume for every job post that's out there. That's not something that. That's really doable. I've

[00:09:26] Jaim Zuber (guest): got, three or four basic standard ones that I have. My, if it sounds like a lead engineer, it's one thing if the staff or principal, it's another, if it's the engineering manager, it's one if it's a director, 'cause those are all different things that you're gonna look for that

[00:09:41] Jaim Zuber (guest): So I've got four basic templates that I use and it's all the same content. It's just sums higher, some's lower, but I, versus, I, I would definitely say pick your spots for the roles that you apply for. Look ones that are really good fits yep, I am. I can walk in there with this right face and say, I'm the exact right person they wanna hire for this.

[00:10:03] Jaim Zuber (guest): Start with those, start with, and put time in. I'd say, invest time in it. If you're looking for work,

[00:10:08] Jaim Zuber (guest): you got time. And looking for work is a full-time job, it's, it. When you're doing

[00:10:13] Jaim Zuber (guest): it, it takes time. It's draining. It's not easy. So I, my approach is like, just pick the

[00:10:18] Jaim Zuber (guest): best ones and, but it's also important use your time wisely,

[00:10:24] Jaim Zuber (guest): Say is this type of thing that's gonna get me to the next phase, maybe not.

[00:10:28] Jaim Zuber (guest): And even if I have the perfect resume for the perfect job, you get bounced,

[00:10:32] Leo Dion (host): right. How, what do you think about cover letters?

[00:10:36] Jaim Zuber (guest): I don't have a good answer for that. One thing, AI can help 'em with that. That's one thing AI is good for.

[00:10:41] Jaim Zuber (guest): You just say.

[00:10:41] Leo Dion (host): Yeah I think that's a good point. It is just cover letter is a little bit like, to me it'd be like emailing somebody or messaging somebody in HR at a particular company being, Hey, I posted here, I'm, I really know a lot about swift concurrency and migrating to Swift concurrency.

[00:11:01] Leo Dion (host): I think I could really help out your team. Be very be very specific when you. In your cover letter or in your contact of that person about why you are a great fit, show that you actually read the requirements and what they're looking for, and I think that goes a long way to getting your name out there.

[00:11:18] Jaim Zuber (guest): Yeah, I think so. Yeah. Definitely have everything in your cover letter be true. Even if you can start with AI and I don't really know

[00:11:26] Jaim Zuber (guest): if

[00:11:26] Leo Dion (host): You could start with ai, but don't let it be too generic and sound like a bunch of nonsense, which can

[00:11:33] Jaim Zuber (guest): Oh yeah the HR person, I'm sure they can spot a, an a AI generated resume right there. So you have to be able to stand behind everything that's in there. I told my team would, when I was doing, when I was a director, it would submit documentation that was AI driven. I was like, okay, that's okay, but you have to stand behind everything that's in there.

[00:11:52] Jaim Zuber (guest): It,

[00:11:53] Jaim Zuber (guest): It's still you submitting it even to something else wrote it. It's good. It's okay for a starting point. But yeah, don't lean too hard into it and really, I don't really know. I have no, I don't know if cover letters are worth it anymore, pre three years, three years

[00:12:06] Jaim Zuber (guest): ago.

[00:12:07] Leo Dion (host): to me doesn't necessarily mean cover letter, like something super fancy. It just more means like a paragraph or a couple sentences just saying, Hey, I'm interested in this position. I saw this this would be great for me. Here's why you should hire me, and I've attached my resume and call it good.

[00:12:25] Leo Dion (host): I don't know what more a cover letter should be, but I don't think it needs to be more than that right

[00:12:30] Jaim Zuber (guest): Yeah, it could be lightweight and three years ago, I didn't even bother them. I just set it out there and I think no one did. Now it's I don't know, but I don't have any info to say you should do a covered letter. I don't know if any

[00:12:41] Leo Dion (host): right,

[00:12:41] Jaim Zuber (guest): I don't know. If I don't. If they don't look at the resume, you're dead in the water Anyway I do have,

[00:12:45] Leo Dion (host): really good point.

[00:12:46] Jaim Zuber (guest): yeah, I do have a summary at the top of my resume, which is a newer thing.

[00:12:50] Jaim Zuber (guest): So it just kinda explains yeah, I've done, I've been a manager, I've been a director, but now I'm trying to be hands on, so just a kind of a summary, which could do some cover letter type things. So that's one thing I did add to my resume based on some advice that I read.

[00:13:06] Leo Dion (host): How many pages is your resume? How many is too many pages? I've done a lot, I've done a lot of

[00:13:12] Leo Dion (host): work in that time. How many,

[00:13:14] Leo Dion (host): pages should I have?

[00:13:16] Leo Dion (host): Like how many pages

[00:13:17] Leo Dion (host): is too many? And how do I like, summarize it in such a way that somebody's gonna be interested in it, if that makes

[00:13:24] Jaim Zuber (guest): Right. I, think the standard answer is you want it? Add two pages. I never did this before, like three years ago when I was looking, it was like four or five pages. 'cause I've been doing this a long time. Like you had a lot of cool stuff on there that I had done. And I figured, and people would dig into the old stuff, like in an interview or something they made oh, I worked with this technology. Just a way to, connect with your, with the person who's interviewing you. But I think nowadays, like HR expects it, to be. Yep. Two pages have all the good stuff right up front, like no one really cares what you did. Even five years ago,

[00:14:01] Jaim Zuber (guest): It's it's all what have you done lately?

[00:14:02] Jaim Zuber (guest): Especially with this parking where there's so many resumes out there, like you wanna make sure everything that's relevant to this job is right up front.

[00:14:10] Leo Dion (host): Yeah, the only thing I can think of is I have this experience. I know how to learn new things. I know how to lead a team. The more abstract stuff I think would be helpful on a resume. But otherwise, if it's newer techno where they're just like, I just want you to make sure you know the latest technology, like that's it, then yeah, it makes total sense to just have the latest five years of, work that you've done in Swift ui, for instance. What do you have any other tips when it comes to resumes like gotchas or do's or don'ts?

[00:14:41] Jaim Zuber (guest): Yeah, not sure. I would say I'm a

[00:14:42] Leo Dion (host): Winds, wind digs is at the preferred font now.

[00:14:45] Jaim Zuber (guest): windings. Yeah, that

[00:14:46] Jaim Zuber (guest): that's definitely the way to go. One tip I did

[00:14:49] Jaim Zuber (guest): learn is that I always exported mine

[00:14:52] Jaim Zuber (guest): to PDF. Like some back in the

[00:14:54] Jaim Zuber (guest): day, like recruiters would literally change your resume if you submitted a word or something like that. I've had recruiters do that, like sketchy stuff, so I always did.

[00:15:03] Jaim Zuber (guest): I always did a PDF. And if you submit it, it's gonna be harder

[00:15:07] Jaim Zuber (guest): for the tracking system to read all the stuff out of

[00:15:09] Jaim Zuber (guest): there for your experience. So you're gonna go there and fix a bunch of stuff. So be able to export to like word format and pages. Pages

[00:15:17] Jaim Zuber (guest): can do that. So you can do that from your Mac.

[00:15:19] Jaim Zuber (guest): Like with everything, but especially if anything workday, export it to the Word document you'll be happier.

[00:15:25] Leo Dion (host): So my my anecdote is I recently submitted a marked down resume in Workday and it was marked as spam. I now have I'll post a link to it in the show notes, but I have a marked down to PDF. Converter that. runs a GitHub action. 'cause that's where I had my resume. So hopefully from now on I won't have that issue.

[00:15:50] Leo Dion (host): But yeah, it sucks. 'cause Workday especially, it's just not gonna look at it, it's not gonna check what it looks like. So you think like a mi you think Microsoft Word is better than PDF?

[00:16:01] Jaim Zuber (guest): Yeah, especially for things where they're scanning it and trying to get it to your experience, like work rate does that. And

[00:16:07] Leo Dion (host): They don't scan PDFs.

[00:16:09] Jaim Zuber (guest): they do, they just make a lot of mistakes. So I had to go

[00:16:12] Leo Dion (host): Okay.

[00:16:12] Jaim Zuber (guest): Any like small eye, I had to fix every version of every time Swift has mentioned my resume, which is everywhere I had to go and change it that got fixed

[00:16:22] Jaim Zuber (guest): when

[00:16:22] Jaim Zuber (guest): I,

[00:16:23] Leo Dion (host): What, did it do with Swift?

[00:16:24] Jaim Zuber (guest): Any like little, I lowercase, I, it just got it wrong. So any word we thought, okay, I had to go and fix. Once it's already in there. So the automatic import worked a lot better with Document, with a Word doc. Workday is a terrible software from the hiring side and from the applicant side. Just that's

[00:16:43] Jaim Zuber (guest): just,

[00:16:43] Leo Dion (host): it's what was I gonna say? And now with these cut HR departments, they just

[00:16:48] Leo Dion (host): are gonna totally rely on a piece of crap to do it. That sucks.

[00:16:52] Leo Dion (host): How, what do you think of formatting? Keep it all one font. Bold out things that you think are gonna really catch people's eye. Maybe use headers properly.

[00:17:04] Jaim Zuber (guest): I think all of those things, like I'm not I wouldn't be the grant expert for

[00:17:08] Jaim Zuber (guest): all.

[00:17:09] Leo Dion (host): I guess is what I'm trying to say. Just think of it from the HR person who's gonna wanna look at this quickly and just be like, yes, no, and then. Do you think like links, do you think links work? Like people will actually look at it and be like, yeah,

[00:17:24] Leo Dion (host): I wanna pull this up and see what they actually did, or,

[00:17:27] Jaim Zuber (guest): Yeah, I'm not sure. I don't really have any links in mind. I just know there's a good site I was gonna, it's in the show notes from. Gie Roche, who's done a lot of writing on the tech industry. He's got eng, he's got the resume template site. He's got a book on the engineer tech, the tech resume, and he just gives out tons of good advice

[00:17:47] Leo Dion (host): we'll put that in the show notes. So definitely take a

[00:17:49] Leo Dion (host): look at

[00:17:49] Jaim Zuber (guest): that's in the, that's in the notes.

[00:17:50] Jaim Zuber (guest): But yeah, have as much as you can have a standard format. Don't get too weird, they're used. HR is used to looking at something in a certain format. Don't mess with it. They got three to five seconds to scan your resume and they're gonna look for the place they're used to looking for the stuff they wanna see.

[00:18:06] Leo Dion (host): Okay. Let's jump to talking about do you wanna talk about navigating the market or do you wanna talk about switching between leadership and development?

[00:18:14] Jaim Zuber (guest): Yeah. They're interrelated. Like last year,

[00:18:16] Jaim Zuber (guest): like I had a job.

[00:18:18] Jaim Zuber (guest): I saw all this laugh happening. I looked at kinda my skillset. I'm like, I've got two years of like actual,

[00:18:25] Jaim Zuber (guest): literal engineering management experience. Even though I ran a software company, consulting company,

[00:18:31] Jaim Zuber (guest): I ran a band, music band.

[00:18:33] Jaim Zuber (guest): So I came in pretty high level understanding the role of an engineer manager. So my equivalent experience is a lot higher than two years, but that's what it's on my resume. And if you're applying and they don't know you. That's what they're gonna look at. So I was kinda like looking at my skillset and if something happens, like my engineering skills are gonna be the most portable, that's gonna help me get the next job more likely than the engineering management, at least until the market improves.

[00:19:00] Jaim Zuber (guest): Once the market improves, then you can do a lot of things. 'cause I had a lot of interest in my resume for engineering management three years ago, where now it's, those are. Really tough to get. A lot of the layoffs in the industry, that was the managers, the directors, so middle management flattening has been the trend.

[00:19:19] Leo Dion (host): I was gonna ask about that.

[00:19:21] Jaim Zuber (guest): any engineering manager engineering manager role that's open, kind, have way more applicants than they would've, a couple years ago. And the people that have been doing it for, five, 10 years, a lot of times they're pretty big name companies. So I kinda knew that just by my resume, I wasn't gonna stand out.

[00:19:37] Jaim Zuber (guest): And I'm getting in the loop for some of those roles.

[00:19:40] Jaim Zuber (guest): But realistically, like the engineering skills are probably gonna make my kind of make the next move happen. That's not a step back in my book one blog post I read. Years ago charity Majors wrote a blog post on the pendulum theory that says the most effective engineers have spent time in management.

[00:19:59] Jaim Zuber (guest): The best managers aren't more than three years removed from hands-on work, to paraphrase. So she recommended going back and forth, go into leadership a little bit, come back sharp, sharpen up your tech skills. That works for me 'cause I get bored doing one thing. For two to three years, so getting a change of pace is works great for me.

[00:20:19] Leo Dion (host): When you say manager, I mean there's a lot of different kinds of managers, like project manager or product manager or just like a boss, so to speak. Like what kind of manager role do you think is more apt for somebody who's in engineering?

[00:20:37] Jaim Zuber (guest): Yeah, typ, the typical path is, most people listening to this are iOS engineers, mobile engineers of some sort, hands-on skills. Typically you go into engineering management product management, totally different thing.

[00:20:51] Transitioning from Engineering to Management
---

[00:20:51] Jaim Zuber (guest): There are a lot of engineers that go into product management.

[00:20:53] Jaim Zuber (guest): That's where you're managing a product, not people necessarily, at least, and a lot of engineers go into product project management, program management. That's more, that's a different thing altogether. That's making sure projects and things bigger than one project moves smoothly.

[00:21:10] Jaim Zuber (guest): But typically the engineering path is to, for, seed engineer if they've got a good reputation at the company. People like them, like working with them. They know the tech stack. They know the main, they're a good fit to go into management. Typically, that's how people get their first cha chance at engineering management.

[00:21:28] Jaim Zuber (guest): So at that point you're leading team, like they report to you. You have to go into work, you have to go into Workday to manage a bunch of stuff. That's why the managers don't like Workday either, because it's just it's rough.

[00:21:40] Leo Dion (host): One, one thing, I forgot which episode it was, but we had talked about management and one of the things that I do and I've learned as I've grown more mature is,

[00:21:49] Leo Dion (host): The thing about being a manager is as like a developer who, especially somebody who's indie like myself, it's like

[00:21:58] Leo Dion (host): I

[00:21:58] Leo Dion (host): I,

[00:21:58] Leo Dion (host): can't get everything I

[00:21:59] Leo Dion (host): want done. I need to get somebody to help

[00:22:02] Leo Dion (host): me. And I end up getting, I end up becoming a manager because I

[00:22:06] Leo Dion (host): have a couple of people who are helping me on certain products or projects that

[00:22:10] Leo Dion (host): I'm working on. And that's where I've

[00:22:12] Leo Dion (host): seen like the manager be

[00:22:15] Leo Dion (host): A. Not augmenting, but just being able to like multiply yourself and the work that you do, if that makes sense.

[00:22:23] Leo Dion (host): And I think that's where the manager skill is really helpful because if you do it all by yourself, you're just not gonna get as much done. But if you have two or three other people doing it with you and you're managing them and breaking things into tests, knowing how to organize stuff, I think that's.

[00:22:38] Leo Dion (host): That's where becoming a manager, that's where it clicked with me, where like becoming a manager is just being a, an engineer who can multiply themselves so to speak. Does that make sense?

[00:22:47] Jaim Zuber (guest): I think so. Yeah, if I looked throughout my career, like at least the first decade, like I saw what my managers did and I didn't wanna do it. I was like, I don't wanna do this. They just go to meetings. They had to do a bunch of paperwork. I didn't wanna do it. But I think like you said, I got frustrated with poor management or just mismanagement.

[00:23:07] Jaim Zuber (guest): It's if I could have done that, I could have avoided a lot of these pain points that we face, that the team is facing. So just let me handle that. I can do it. I did that. I don't necessarily wanna do it, but I'll, I'm happy to do it just to make everyone else's life easier.

[00:23:20] Jaim Zuber (guest): So I think just, yeah, I think the challenge is like scaling yourself, just like help instead of making yourself an effective member of the team, making an effective team or making an effective organization where everyone's working together.

[00:23:35] Leo Dion (host): Yeah. I think of it as from the indie perspective where I'm

[00:23:38] Leo Dion (host): pretty much directing myself in everything I do to where it's like I, you get to a point in your career where you realize you're not gonna get any faster at coding, I. You're people are like, oh, like I got like this product done in a week.

[00:23:51] Leo Dion (host): And then you realize, they didn't add any tests and it barely works.

[00:23:54] Jaim Zuber (guest): Right.

[00:23:55] Leo Dion (host): if you do one right, but they're so proud of how fast they are and you realize being fast is in everything. And that if you want to get more done, you just need more people and you need to manage them and teach them and so on.

[00:24:05] Leo Dion (host): That's just what has been my revelation over the last year.

[00:24:09] Challenges and Strategies in Management
---

[00:24:09] Leo Dion (host): Do you, I think one of the things that somebody might say is Ugh, I don't wanna manage, 'cause I don't want to deal with somebody above me basically pushing me to do things that I don't think I can do. An executive is we gotta get this done in a week, get it done. And it's yeah, if we do that, it's gonna break. That kind of stuff where you're just like having to deal with that kind of crap. What do you do, what do you say to somebody like that?

[00:24:33] Jaim Zuber (guest): But that's at every level, right?

[00:24:36] Jaim Zuber (guest): You could be a

[00:24:36] Leo Dion (host): That's what I

[00:24:37] Jaim Zuber (guest): you could be a mid-level engineer and they're like, you need to get this done in two days.

[00:24:41] Leo Dion (host): Yeah.

[00:24:42] Jaim Zuber (guest): So if you're, the higher your level, the more skin you have in the game to push back. But. You have to be smart about it and talk in the type of, with the type of values that the people above you, your manager, director, vice president, can understand.

[00:25:00] Jaim Zuber (guest): If we get this done, we're gonna burn the team out and we're not gonna be able to do the things for the next six months. But there's gonna be, we can't do it with the quality that we have, that you, an enlightened view is like you have to. Think of the long term benefits to the team, to the company.

[00:25:15] Jaim Zuber (guest): If you burn your team out, you really suffer with bugs. Is that worth getting that out? Sometimes yes. Sometimes it makes sense to, to crunch something out there for the business, especially the startup, dates are important. But if you burn your team out, then they can't continue to iterate on the things that you want them to do.

[00:25:31] Jaim Zuber (guest): So you have to make sure that you're presenting all the terms in the things that. The people at every level value

[00:25:39] Leo Dion (host): Yeah. Yep. So let's talk about what are, can you think of any specific benefits to each of these tracks? And why you may not want to stay in one long, too long, if that makes

[00:25:53] Jaim Zuber (guest): Yeah. You mean like just engineering versus management. upper

[00:25:56] Leo Dion (host): Yeah,

[00:25:57] Leo Dion (host): exactly.

[00:25:57] Jaim Zuber (guest): I think I've. Seen enough where I can make calls on that. If you don't wanna deal with stuff outside of your team as much, you can be a

[00:26:06] Jaim Zuber (guest): senior engineer, you can be a worker bee, crank out features, functionality and do that, that's fine for a lot of people.

[00:26:13] Jaim Zuber (guest): I, you don't really need to go beyond that to have a

[00:26:16] Jaim Zuber (guest): good career. I got to the point where I got bored

[00:26:19] Jaim Zuber (guest): just cranking out table views year after year,

[00:26:21] Leo Dion (host): is that what it was? It was cranky out table

[00:26:23] Leo Dion (host): views.

[00:26:24] Jaim Zuber (guest): more to it than that, but okay, we need to, we need another screen here. Here's another table view. I've been doing this for 10 years.

[00:26:31] Jaim Zuber (guest): I can still do it. Even with Swift ui

[00:26:33] Leo Dion (host): UI just

[00:26:34] Leo Dion (host): did not

[00:26:35] Jaim Zuber (guest): No

[00:26:35] Leo Dion (host): come in soon enough.

[00:26:36] Jaim Zuber (guest): I, no, not so much that, but just okay, I can learn Swift ui. Here's another way to do the same thing we've been doing for,

[00:26:43] Jaim Zuber (guest): 20 years. Like I started doing Windows apps.

[00:26:46] Jaim Zuber (guest): Day, embedded stuff, windows, apps, some Mac. But so you can do that.

[00:26:50] Jaim Zuber (guest): That's a, it's a good career. But like you're just downstream from all the decisions that get made in the company. And that got frustrating for me. 'cause I could have prevented these headaches that we're all having right now had I been in the room or they're making these calls, so maybe you could be a tech lead.

[00:27:06] Jaim Zuber (guest): They can be a tech lead manager where you're a little hands on. Working more closely with people outside of the team, with product management, backend web teams that's also, you're still pretty hands on.

[00:27:19] Jaim Zuber (guest): Your time is less spent hands on

[00:27:22] Jaim Zuber (guest): coding. You can, you're directing things you're, mentoring, things like that.

[00:27:26] Jaim Zuber (guest): And that's a also a great way to spend a career. You don't have to go beyond that if you like doing it. It you can do it. So management is a totally different thing. You have a totally different schedule. Like you barely have any time to write code, and you shouldn't be writing a lot of code.

[00:27:40] Leo Dion (host): Okay. Okay. I was gonna ask that. Do you think that a manager should never write code? That's one of the big questions.

[00:27:45] Jaim Zuber (guest): definitely I didn't say never. You shouldn't be writing a lot of code and you shouldn't be

[00:27:50] Jaim Zuber (guest): in the critical path. Because you're gonna get distracted 10 times today. So if you need to, if you need to get this feature out so the rest of the team can do their work, you're the bottleneck.

[00:28:01] Leo Dion (host): I think a little bit of code and a little bit of PR review and code review would be good just to keep yourself knowledgeable about what is going on underneath and keeping quality good. Otherwise, yeah, I wouldn't assign somebody I wouldn't assign a manager to a feature per se, unless you absolutely had to. you

[00:28:22] Leo Dion (host): know what I

[00:28:23] Jaim Zuber (guest): Yeah.

[00:28:23] Leo Dion (host): that sound about right?

[00:28:24] Leo Dion (host): Do you

[00:28:24] Jaim Zuber (guest): No, I agree. I agree with that. I think,

[00:28:26] Leo Dion (host): Okay.

[00:28:28] Jaim Zuber (guest): yeah, even I, my title is director, had managers warning to me and also engineers sent LED team. So I still was reviewing code. I was in charge of making sure the architecture was what we wanted. Even if I wasn't the person, I wasn't dictating everything, I was letting the team make the calls.

[00:28:45] Jaim Zuber (guest): I would ask the right questions to make sure that they understood the priorities that they needed to consider.

[00:28:51] Jaim Zuber (guest): Yeah. But they kinda like this is but yeah,

[00:28:54] Jaim Zuber (guest): one of the most important lessons you have to learn if you're a manager is you can't dictate everything.

[00:29:01] Jaim Zuber (guest): That's recipe for failure. The absolute worst managers you've ever worked for, try to be the tech lead as the manager. 'cause you can't just tell everyone what to do. They need to figure things out on their own. Even if it's not exactly what you'd have done, like maybe my solution was 80% of the right solution and their's is 70%.

[00:29:19] Jaim Zuber (guest): Like you'd let 'em run with it. 'cause lets us move forward. They're bought into it, so if something goes wrong, it's okay that they own it versus I told 'em to

[00:29:27] Jaim Zuber (guest): do it.

[00:29:28] Leo Dion (host): know how it

[00:29:28] Leo Dion (host): works. Yeah. Yeah. Yeah. That's really good.

[00:29:30] Jaim Zuber (guest): so that was one thing I had to

[00:29:31] Jaim Zuber (guest): let go on. Like not everything was gonna be as perfect as it would've been if I would've done it.

[00:29:36] Jaim Zuber (guest): But I think overall we all move faster, and

[00:29:39] Jaim Zuber (guest): ultimately the managers make sure that everything. Is appropriate level, quality, test coverage, all those things. But not every one thing has to be

[00:29:47] Jaim Zuber (guest): optimized, like the way I would've done it,

[00:29:49] Leo Dion (host): Yeah, totally.

[00:29:50] Swift Concurrency and Career Reflections
---

[00:29:50] Leo Dion (host): 100%.

[00:29:51] Leo Dion (host): What have you been working on lately?

[00:29:53] Jaim Zuber (guest): Yeah. I. Given I got the notice I was gonna get laid off in February,

[00:29:58] Jaim Zuber (guest): Looked at my skill set of man, I need to catch up on Swift y 'cause we weren't doing that much with my, we had a little bit proof of concept here and there, but we weren't h heavy with it, so I need to catch up on that.

[00:30:10] Jaim Zuber (guest): So we'd wrap it up with Swift ui helped worked with a company, helped them with their hiring the loop. So like the first half of this year, I was still a hiring manager. I was like hiring people. And the second half, I'm the job seeker. That's how it goes sometimes, but had a little break, so that ended earlier this year.

[00:30:25] Jaim Zuber (guest): So I'm in job seeking mode. I've been writing.

[00:30:28] Jaim Zuber (guest): So, digging into swift concurrency. I got a chance to work with it with my last client. So they had started using kinda the tasks and ay, a weight, a asynchronous coating with Swift. So got a

[00:30:41] Jaim Zuber (guest): chance

[00:30:42] Jaim Zuber (guest): to actors got a chance to dig into all that.

[00:30:44] Jaim Zuber (guest): So I've been going through

[00:30:46] Jaim Zuber (guest): that

[00:30:46] Leo Dion (host): Swift six or still Swift

[00:30:48] Leo Dion (host): five.

[00:30:49] Jaim Zuber (guest): so that was,

[00:30:50] Jaim Zuber (guest): That was still Swift five. 'cause

[00:30:52] Jaim Zuber (guest): EXCO 16 was not out yet. But I got a chance to work with,

[00:30:56] Jaim Zuber (guest): The different, the tasks

[00:30:57] Jaim Zuber (guest): and kind of actors, things

[00:30:59] Jaim Zuber (guest): like that. Got my foot with that. And I, at the time, I was

[00:31:02] Jaim Zuber (guest): like, oh no, I'm so far behind.

[00:31:04] Jaim Zuber (guest): I've been away from Crow for two years. I'm done. I don't know, I'm completely lost. And I looked every I went to

[00:31:09] Jaim Zuber (guest): one more thing, conf and

[00:31:10] Jaim Zuber (guest): Cupertino, and I realized yeah, no one's doing this

[00:31:14] Jaim Zuber (guest): yet. I was like, okay. Whew. Okay, good. I was like, I'm so far behind. I'm done. Stick a fork of me, but no one's doing.

[00:31:20] Leo Dion (host): a, it's really big challenge. I've seen that a,

[00:31:23] Leo Dion (host): lot lately.

[00:31:24] Jaim Zuber (guest): Yeah, it's a,

[00:31:24] Leo Dion (host): My head has been totally into it especially the swift six stuff with ay weight. and like when I talk to other people, they're just like, oh my gosh, it's so hard and so difficult.

[00:31:36] Jaim Zuber (guest): Yeah it's, a mind though. It took me a little bit time to get used to it now, like I love

[00:31:40] Jaim Zuber (guest): it. I think it's, I

[00:31:41] Jaim Zuber (guest): think it's, I think it's huge. I think it's especially for big teams.

[00:31:45] Jaim Zuber (guest): If you're a lead engineer or staff

[00:31:47] Leo Dion (host): Have you done anything with Swift six and Async Coate? 'cause it's a lot more strict

[00:31:52] Jaim Zuber (guest): You could always turn on the strict checking in

[00:31:55] Leo Dion (host): right? I know. Oh I know

[00:31:56] Jaim Zuber (guest): Okay.

[00:31:57] Jaim Zuber (guest): Oh

[00:31:57] Leo Dion (host): a glutton for punishment,

[00:31:58] Jaim Zuber (guest): yeah. So we were always

[00:32:01] Jaim Zuber (guest): turning it on, turning it off to see where we're at.

[00:32:03] Jaim Zuber (guest): I'm at the, I'm at the point where. Yeah I have no problem building an app in Swift six. It's,

[00:32:09] Jaim Zuber (guest): largely a lot of the stuff that our, we always should have been doing. Like use struc instead of classes, make things stateless that you can just pass around that no one

[00:32:18] Jaim Zuber (guest): cares what thread they're operating on.

[00:32:21] Jaim Zuber (guest): So, yeah, I'm a big fan, especially for as like a staff type role where. You probably can't review every line of code that comes through your

[00:32:31] Jaim Zuber (guest): code base.

[00:32:32] Jaim Zuber (guest): If you get a big NF team, swift concurrency allows us to do that, checking at compile

[00:32:36] Jaim Zuber (guest): time. A lot of those

[00:32:38] Leo Dion (host): Yes.

[00:32:38] Jaim Zuber (guest): A lot of those 'cause

[00:32:39] Jaim Zuber (guest): Classic iPhone development, you just throw off a, async,

[00:32:44] Jaim Zuber (guest): Block whatever you want to, and it's fine. Nothing really bad happens until a lot of people start doing it.

[00:32:49] Jaim Zuber (guest): And then things start crashing and

[00:32:51] Leo Dion (host): It extends the sort of I don't know if you remember when we had the transition to Swift, but like people were pissed about how like optional or int and double and all these types had to be the type that they actually were. Whereas an objective C, everything was loose goosey.

[00:33:08] Leo Dion (host): And so people were pissed because it's God, I gotta convert this decimal point number to that end, and I've gotta do it all manually.

[00:33:16] Leo Dion (host): And I feel like that's essentially what Swift six is with concurrency. It's no, you have to make sure that. You don't change a thing unless it's, if it's sendible, you gotta do it properly, or you have to have an actor to make sure that two things don't come in and you have a race condition and all this kind of stuff.

[00:33:34] Leo Dion (host): It's like introducing that safety when it comes to concurrency, which I think is really fantastic.

[00:33:39] Jaim Zuber (guest): Yep. Yeah, I agree.

[00:33:41] Jaim Zuber (guest): And yeah, the type stuff in Swift is a little bit ugly, but at least you're being explicit about what's happening, which I think is just valuable.

[00:33:48] Leo Dion (host): It's safer. I think too especially optionals,

[00:33:52] Jaim Zuber (guest): Yeah, that

[00:33:52] Leo Dion (host): I still don't, I still, when I have to go back into Objective C code I'm not happy about having to deal with that.

[00:33:59] Jaim Zuber (guest): Where's my flett? Where's my flett? I just wanna, I wanna guard this, please.

[00:34:04] Leo Dion (host): yeah because every, everything is optional and objective, so it's

[00:34:06] Jaim Zuber (guest): but I agree with your analogy, but if you're working with the legacy code base that's been around for five, 10 years, like

[00:34:13] Jaim Zuber (guest): it's, could be, it's gonna be really hard to

[00:34:15] Leo Dion (host): No don't go. Don't go to strict build. Maybe your new libraries or your new frameworks strict, but don't. Migrate your old code. We could talk about migrating old code until the day's done. There would not be a short podcast episode 'cause there's so many things about it. I'll link a art.

[00:34:33] Leo Dion (host): So I have a couple articles I'll link in the show notes. One to migrating. And then I did a sort of very basic how to migrate Swift six besides the excellent one that Holly and Matt did on the Apple site. But I have a very basic one for beginners if they're interested.

[00:34:50] Leo Dion (host): Do you miss GCD?

[00:34:52] Jaim Zuber (guest): I still like it. I think it's the.

[00:34:55] Leo Dion (host): Why?

[00:34:56] Jaim Zuber (guest): What's that? I'm glut for punishment 'cause I dug in and got to know it so well

[00:35:00] Leo Dion (host): Oh, okay. Okay.

[00:35:02] Jaim Zuber (guest): and

[00:35:02] Jaim Zuber (guest): I

[00:35:02] Jaim Zuber (guest): think not every scenario is gonna be covered

[00:35:05] Jaim Zuber (guest): by structured concurrency.

[00:35:07] Jaim Zuber (guest): I think we're, it's a swift UI versus c UI kit where if you stay in the lane with

[00:35:11] Jaim Zuber (guest): Swift UI you're fine and it's getting better.

[00:35:14] Jaim Zuber (guest): But if you got really custom things like you

[00:35:17] Jaim Zuber (guest): you're probably just better

[00:35:18] Jaim Zuber (guest): off.

[00:35:18] Leo Dion (host): Tune into our previous episode with Ben if you want

[00:35:21] Leo Dion (host): to do

[00:35:21] Jaim Zuber (guest): I listened to It it was great. That was great stuff. It's yeah, if you wanna do really custom things, it's gonna, it's gonna be painful. If you stay in your lane, you're fine.

[00:35:29] Jaim Zuber (guest): And

[00:35:30] Jaim Zuber (guest): But if you wanna do like some esoteric things with concurrency and threading,

[00:35:35] Leo Dion (host): Pull to refresh. Yeah.

[00:35:37] Jaim Zuber (guest): GCD is, it's still there been. It's been powerful.

[00:35:42] Leo Dion (host): Was there anything else you wanted to talk about before we close out?

[00:35:45] Jaim Zuber (guest): think I think that's pretty good. So I'll throw a couple links to some, like some of the books that help me understand the role of an engineering manager and engineering leader. Like manager's path from Camille, er, resilient Management, Laura Hogan. Those are both excellent. If you have any interest in being a manager or in leadership, buy those books.

[00:36:04] Jaim Zuber (guest): Read them. Even if you don't, you'll at least understand the role. Like you'll understand what your boss is doing, what they're supposed to be doing, what your director is supposed to be doing. Like manager's path talks about the whole stick up to CTO vp, it's I didn't really know what a VP did until I was a director and I interacted with the vp.

[00:36:23] Jaim Zuber (guest): Now I know. Okay. But just going through that book just under kinda helps you understand what people above your. Trying to solve so you can help

[00:36:32] Jaim Zuber (guest): them do their thing. Make yourself look good. Everybody wins.

[00:36:36] Leo Dion (host): Jaim, thank you so much for coming on. Thank you for being my Guinea pig. First episode in the new house. We learned the importance of directly hooking up a webcam to a Mac studio instead of going through a hub. So that's been fantastic. We've been good for the last half hour. Jaim, where could people find you online?

[00:36:56] Jaim Zuber (guest): So Jaim er.com is where I'm doing most of my writing. I'm on, I'm My Mastodon. That's really the only place I really post. You can find me there. I'll put a link in the notes.

[00:37:07] Leo Dion (host): Awesome people should check out our latest newsletters. I just posted newsletter 1 0 1 on my experience at Server Side Swift. Check that out. Check out my link to my talk I did in London, which was awesome. It was great to see everybody there, Aaron, and talk about fitness working out in server side, swift and gb.

[00:37:27] Leo Dion (host): So a lot of great for the latest newsletter. Check that out. If you have any more questions about resumes, hiring, any of that stuff, reach out to me on Twitter or email or whatever you have. Twitter at Leo Dion and MAs it on at Leo Dion at c Im bright digit.com is my website. Thank you so much for joining me, and I look forward to talking to you in the next episode.

[00:37:51] Leo Dion (host): Bye everybody.