< How to get to senior Swift developer roles? | What are the responsibilities of a programming mentor and what comes after being a senior developer? > |
Recorded – watch the full episode on YouTube.
Do you think a degree in computer science is necessary to get a good job as an iOS developer?
Paola Mata: My is answer is: no. I do not have a degree in computer science. I have a degree in English literature, which is very unrelated. I love being an English major. I love books, so that was great.
I did however, get exposed to programming when I was in high school. So I knew something about it, some of the basic ideas. When I had to relearn it, it felt like I was starting from fresh. But where I think or it's my guess or not my guess, my assumption maybe.
“I think people who have a CS degree have a bit of an easier time picking up certain concepts. It seems like it happens a little faster, like switching platforms or switching ideas. But I think it's not required.”
I think people who have a CS degree have a bit of an easier time picking up certain concepts. It seems like it happens a little faster, like switching platforms or switching ideas. But I think it's not required. My entire team right now does not come from a CS degree. Either business or chemistry or something else. So it's definitely not required.
If you're in a position where you're really interested in learning, like if you're in school is what I'm saying, and you can go that route. There's nothing wrong with it. I encourage it if you're interested in doing it, but if you already have a degree, I don't think it's necessary to go back and get it unless you absolutely want to.
“My entire team right now does not come from a CS degree. Either business or chemistry or something else. So it's definitely not required.”
Paul Hudson: I think that's a fairly massive statement of fact there. Your entire team, the team you work with right now at the New York Times, a massive media company, all come from diverse backgrounds.
Paola Mata: And also I've worked with a number of organizations in New York specifically that are training these training programs like bootcamps, I guess we're calling them still.
For people who come from different backgrounds and want to just learn specifically iOS development as opposed to computer science. I do think it helps to maybe on your own learn some of those data structures and algorithms because they come up in interviews. And it does help you to get a deeper understanding of what you're doing. But you can accomplish that by studying, by reading on your own versus having to go back and get a four-year degree.
Paul Hudson: Well, you're spoiled for choice around there for bootcamps, because you have folks like Pursuit who do astonishing work.
Paul Hudson: Do you frequently allocate time to refactor code, or would you prefer to write the code once the first time just?
Paola Mata: Well, if it's my personal project, I might take the time, but when I'm at work, we have assigned sprint work. I have to work on the assigned projects by the end of the sprint. If I have an idea... Something should be refactored because it'll actually result in an improvement, make it easier to work, make this feature better or safer.
I might suggest it to my manager or whoever handles the sprints and say like, “hey, we should take our time for this.” But as I'm maybe building something out, I might like, “hey, I think it works a little bit better this way,” and rewrite it a little bit. But I don't necessarily go back unless there's a need to.
Paul Hudson: One of the hardest things most of us find to do is to estimate how long it takes to do some work. Some folks use planning poker or similar. Are you good at estimating time?
Paola Mata: Yeah, I think it's just practice. I was doing it when I was back at Buzzfeed and I was still relatively junior. I think I'm just fairly good and it's a skill on its own. Knowing how to break down work and assign points to it. Obviously, these are just estimates. There isn't like, an hour time that's assigned to two story points or three story points, but I try to think of it as a bigger picture. Is this going to take a day? Is this going to take two or three days? Is this going to take a week, two weeks?
And that's how I tend to think of things and not get super caught up on being very specific.
This transcript was recorded as part of Swiftly Speaking. You can watch the full original episode on YouTube, or subscribe to the audio version on Apple Podcasts.
SPONSORED Take the pain out of configuring and testing your paywalls. RevenueCat's Paywalls allow you to remotely configure and A/B test your entire paywall UI without any code changes or app updates.
Sponsor Hacking with Swift and reach the world's largest Swift community!
Link copied to your pasteboard.