2021 graduate Lauren Mason shares her internship experiences, what it’s like to transition into a first job after graduation, and how the scope of her work has expanded and evolved over time.
[1:04] Lauren discusses her first internship at Mindbridge AI
[4:50] Lauren reflects on her second internship at RBC Amplify during the pandemic
[13:12] Lauren tells us about her transition to industry after graduation during the pandemic
[16:36] We ask Lauren about how she networked and learned more about referrals
[20:10] We talk about Lauren's experience at Block, starting with an explanation of "data security"
[27:36] Lauren shares her advice on things like recommended courses, interviews, and work-life balance
[36:21] Mario and Diane wrap up
Mario: Hello listeners and welcome to our first episode chronicling the trajectory of a CS professional's career. In this episode, we are shining the spotlight on a UofT alum still early in her career.
Diane: From her first internship at MindBridge AI to her current employment at Block, Lauren shares her experiences over the first few years of her career as she navigated the pandemic and a difficult job market.
Diane: Internships can have a tremendous impact. Most obviously on the opportunities you pursue as a new graduate. But even before that, they can influence how you approach school itself. Let's hear about how Lauren's two internships shaped her path.
Mario: Why don't we start with MindBridge AI? Could you tell us what was it like to transition to an internship as an undergraduate student for the very first time?
Lauren: It feels a little bit like jumping off into the deep end. Because ...doing undergrad even as good as you might be working on like projects and everything you might excel at that, but then you go to your first "real job" and there's so much more context that you're missing from just doing undergrad assignments. So, it feels like there's a lot to learn. You might feel a little unprepared, some imposter syndrome. But it also feels like you leave the internship feeling like you've accomplished something, and you feel like a much stronger developer for it.
Mario: Excellent. So by developer you mean like programmer or is there more to it than just, you know being able to do the language?
Lauren: Definitely more to it than just doing the language. There is- I mean there's a whole development pipeline, so even outside of just learning... good coding practices, there's a whole process that sometimes we miss out on in undergrad. Especially in the earlier years of integrating our code with other people, learning how to work in a team, developing a product that someone else actually has to use.
Diane: And for the first time, it's not something you hand in and gets marked and nobody ever looks at it again. It's actually going into production.
Lauren: Yeah, exactly.
Mario: Could you just walk us through? You know, you're- a week in the life of Lauren Mason as she worked as an intern at Mindbridge AI. What was that like?
Lauren: So I did... MindBridge was an internship in Ottawa bceause that's where I grew up, so I wanted to go back there for the summer.
The internship was about an hour and a half commute from where I lived, so that was, you know, getting up early, get on the bus- Ottawa Public transit sucks. so I get on the bus-
Mario: That's a great sound bite for the podcast.
Lauren: Yeah, so get to work and then it's like- it's a standard 9:00 to 5:00. You're an intern. No one expects you to stay late.
And I was working on- it was really like an intern project. It didn't directly integrate with any existing MindBridge products, but it served a purpose of making employees lives better.
So, I had more of a back-end role on that. So honestly, from like 9:00 to 5:00, it was pretty much just taking a ticket, seeing what I needed to do, working on that, trying to get it done.
I don't know if there's anything more complicated than that, that I did. Like again, it was my first internship, so I'm writing code, learning how to use various back-end frameworks for the first time. So, I think that was a helpful learning experience there.
Mario: Were there any, like, regular meetings that you had to be a part of or...?
Lauren: I mean they were stand up. I can't remember if it was a daily stand up or maybe a couple times a week.
Mario: Sorry, what is stand up?
Lauren: Oh. Stand up is a very, very short meeting, usually like 15 minutes max depending on the size of your team.
Each member of your team will say this is what I got done, say yesterday, for example. This is what I'm going to work on today and then here are the things that might be blocking me from getting my work done. So if anyone has any issues then the team can try to help them resolve it.
Diane: Before we move on to Lauren's next internship, she mentioned that her day-to-day work at MindBridge AI involved taking "tickets". Typically, in industry, a system is used to track the things that need be done and these are called "tickets". An example of a ticket could be a bug that needs to be fixed or a new feature that needs to be implemented.
Mario: Yeah, even back in my day as an undergraduate intern, I remember getting assigned tickets to complete. It's a pretty nifty system. Lauren also used another term, "back-end framework". If you're working on the back-end, that probably means you're working on the server side of things, which is something that a user can't see. In contrast, the front-end typically means the user interface, which is something the user directly interacts with.
Diane: Lauren's next stop was RBC, where they have something called the RBC Amplify Program. Interns in this program are given a business challenge that they need to solve. They start out with ideation and proposals, and ultimately develop an application. Let's get back to our interview with Lauren.
Mario: So that was- that was pre-pandemic. Was the adjustment to RBC in the summer of 2020 any different?
Lauren: It was definitely different. I think it's interesting because sometimes you go into an internship pre-pandemic and you're like, I don't know what I'm doing. Doing your first internship during the pandemic, the difference is: The company doesn't know what they're doing. They've never done this remote before. So, it kind of feels more like you're on equal footing. Like you're both figuring this out.
The biggest difference that comes to mind immediately is the commute. Suddenly, you don't have to commute an hour and a half to work. It's just you log on, which is great, but you definitely do miss out on some of the more social, networking aspects. Like that becomes more difficult.
Diane: And did that influence your ability to pick up the things that you didn't already know, like how did you handle those things you described that you didn't fully understand how to do.
Lauren: I think it did definitely reduce my ability to learn new skills. I think for that internship it would- I spent more time applying skills I already knew just because it's harder to reach out to someone when you've never met them in person.
Diane: Right.
Lauren: It's hard to find a senior developer to ask "hey, how should I do this?", "What's the best way to do this?". When it's just slack, you don't know if they'll be receptive to speaking to you, so that can be intimidating.
I think it's also just a part of the internship program I was doing that is very much based off of developing your own new application, kind of like a little start up application as a team. So that application isn't as integrated into the overall company infrastructure as if you were joining a different internship and working on something that already existed.
Mario: For your day-to-day at RBC, was that basically the same? You would just work 9:00 to 5:00 and then log out.
Lauren: Yeah. Yeah. So day started at 9:00 and it was remote, which meant I woke up at 9:00. Just kidding. Don't tell them that.
Yeah. So 9:00 to 5:00. It's kind of nice- It's nice working from home because it's easier to take a break from the computer, walk around, like, stretch your back sometimes, especially after really long meetings.
But yeah, the day was spent- Actually, I was going to say the day was mostly spent coding, but there was really only like 1 month where we were actually writing code and developing. For the first two months, it was a lot of ideating and planning and designing. Which was interesting, because as a software engineer, I didn't really do that in school. I don't really do that in my current job. So it was an interesting experience where it was nice to see how all that is done. But at the same time, I didn't necessarily feel like I was getting anything out of it, because I didn't feel like I was going to apply it in the future.
Diane: Because you usually don't have the- the scope to look at the whole thing from ideation to complete into implementation and deployment.
Lauren: Yeah, exactly. And there's some parts of it where, for example, developing a full business proposal around a new product that I don't have the background for. For example, I don't- I didn't go to business school. I didn't take business courses at U of T. And there's a member on our team who is- Their role was something like... business consultant. So, that was really much more in their wheelhouse. So we were there to support, but we didn't have the ability or the opportunity to contribute much during that time. So it felt like: waiting, waiting, waiting, go! And then you have to write code. And then you're stressed about a deadline.
Diane: So sounds like you got exposure to a larger part of the life cycle of a project. Including things that you probably won't be working on in the future, but might have been helpful to see though... the full scope?
Lauren: Yeah. Yeah. And I think it's helpful, especially if you're not entirely sure if you want to be a software developer after graduation, if you might be considering, I don't know, UX or something like that, you can get a better look at what that looks like and what their day-to-day looks like. Because you're working so closely with them.
Diane: Right.
Diane: Did you find, Lauren, that when you came back to school after having done an internship, it changed anything about how you approached your courses or which courses you took?
Lauren: I think it's- there's a weird moment where I came back for my first internship and felt like I really don't want to be doing JIRA tickets all day, every day for the rest of my life. So, then I started thinking about what can I do not just be like just a software engineer.
And I say that now because, you know where I am now, I really enjoy doing software engineering because it is not just doing JIRA tickets every day for the rest of your life.
So, you know, I had some misconceptions about what that career would look like.
So, after the first internship, I would say I was interested in courses that were maybe like a little more specialized. I think I briefly considered UX like design thinking. I was interested in learning more about AI and machine learning because I was also doing a major in cognitive science.
But then later, after my second internship, I was interested in courses that would have more direct applications to a career as a software developer, so like kind of a change in perspective there. So that's why I was looking at courses like networking and databases. And then the algorithms course so I could get a job. So, like two different perspectives coming back after two different internships, I'd say.
Diane: But it did help you fine tune a little bit which courses you were going to take.
Lauren: Yeah, I think so. I don't think I would have looked at networking if I wasn't thinking about future applications.
Mario: And so. You know, after that internship, you went back to school, but then your first job was again at RBC. Did you find that the internship helped get you that job?
Lauren: So the internship definitely helped me get a job at. I actually got the offer while I was still doing the internship, so I went back to school like with the offer already in hand. There was another developer at RBC. He was reviewing all of our technical work. He reached out to me because he said he just liked the code I was writing. He felt it represented good coding practices. So, he reached out to me to tell me about his team, asked me if I would be interested. He set up meetings with his manager.
So, it was really just, I talked to this developer, I talked to his manager and then they gave me an offer. I didn't have to interview, which was very nice.
Diane: Incredible.
Mario: What's your first day like? What's your first week like? What's your first year like at RBC?
Lauren: So that's interesting because I joined RBC right out of, sorry. I joined RBC like right in the middle of the pandemic. So, my first day was completely remote. I think I logged in. My manager said hi and then they they gave me some onboarding material.
But really for the first month or two I was really left on my own. Which is kind of stressful when you're just coming out of undergrad and you feel like you need to be doing something. Especially compared to an internship where you join and suddenly you've got a project, you've got something to do. There's a much slower onboarding curve when it's your full time role.
Mario: Ok, so it took like two months of feeling like you're stressed, sort of not doing enough. I'm guessing that picked up at some point.
Lauren: Eventually they started having me join projects, shadowing senior developers, things like that. But again I- It's as a product of the pandemic and they weren't as prepared to have a new employee onboard, especially coming right out of undergrad. It's harder to teach someone the ropes and harder to coach them when you haven't done that before, virtually, and I don't blame them for it like they're all caught up with their own work. But when they don't see me physically, day-to-day just sitting there, I think it's harder to keep that in mind.
Mario: So how did you... I guess. How did you navigate that? Did you have to, like, I don't know if there was a slack or something, but just be like "Hi, I'm free. Is there anything for me to do today?"
Lauren: Yeah. Yeah, I pretty consistently kept asking, "Is there anything you need me to do? Can I help with this?" if they mentioned any tasks that needed to be done. Then, I was always ready to volunteer to help out with those. Sometimes, they were too advanced for my current level of knowledge. You know, using some internal tool that I had just never seen before. But always looking for opportunities to find work and then learn to through doing the the work.
Mario: Did you do any networking within RBC? Did you do any networking outside of RBC, maybe with friends from undergrad that you had or something along those lines?
Lauren: Yeah. So I did most of my networking outside RBC. Just because I was curious about what it would look like at a different company. You know, I'd been- I'd done an internship at RBC. I'd done 2 years, so I wanted to take a look outside.
And I did talk to friends from undergrad because once you graduate, all your friends have jobs at companies and all of a sudden they can refer you to jobs at companies. So that's definitely very helpful. And, I got my current job from a referral from a friend.
Diane: It's really incredible to think as an undergrad that the people sitting around you in class are going to be in a position to help you get a job at some point and you and you to them that you will become the peers that help each other once you graduate.
Mario: Yeah, absolutely. What did that networking kind of look like then? So, like they were your friends. So I'm assuming you don't send them a LinkedIn message. You send them a text message or I actually don't know how it works anymore.
Lauren: Yeah, yeah, just a text message saying "Hi. I'm looking for a job. Can you refer me?" But no, they were really great. Especially because I think after I graduated, there was that whole, like, tech job market crash, like tons of mass layoffs everywhere. So, it became really hard to find a job.
And so even with referrals, sometimes the first referral doesn't work, and then they refer you to a second role, etcetera.
Mario: So, you were looking at job postings at a specific company and asking other, I guess, friends who worked at that company to see if they could refer you to those positions.
Lauren: Yeah, exactly. And it's just nice having that kind of inside perspective I guess. Especially because when you interview, as they describe a role to you and what the expectations are, then your friend can say I don't know if they're really needing what you need right now, or if they're giving you what you deserve. So just having that kind of inside perspective is really nice.
Mario: So I guess, if you were speaking to an undergraduate student right now, what advice do you have for them networking wise for sort of-? You mentioned how the job market is is maybe a little stressful right now. Layoffs kind of happening in different places. How should they prepare for networking in this kind of environment?
Lauren: That's a heavy question.
Mario: What would you tell a younger Lauren?
Lauren: I would definitely tell her to get out of her comfort zone and try to network more. It's scary. I am very much an introvert, so I really don't want to do it. But it really is so much more effective at getting your foot in the door, getting that interview, and than just mass applying to various job portals.
I've never heard back from an application I just submitted, you know, through LinkedIn, through a job portal. But I have heard back from applications I submitted with referrals so it really does count for something.
Mario: So, you're currently- you're at Block. You're a software engineer, and then data security. What? What is that?
Lauren: So for that, I'm going to steal something I saw from, I think, a coworker's LinkedIn job description. It's "software engineering for applied cryptography systems", and that sounds kind of insane.
But what it means is there's lots of applications that need to handle data. They need to do it securely. They need to leverage certain cryptographic operations to do so, and this might be like, you know, encrypting data or something like that.
But the actual cryptographic operation, it's just- it's a small part of the application.
And then there's a whole application built around that where you need to manage...like you need to manage keys, you need to distribute them, you need to store them. And all that is something you can do as a software engineer with very little knowledge of cryptography.
So my role is really lots of software engineering just happens to be for applications that do cryptography.
Diane: What was it like to come into a situation where there was presumably a huge code base? How did you learn your way around that?
Lauren: I'm still finding my way around it. We own so many applications that some of them I honestly never worked on.
But I would say that my team was really a big help with helping me kind of navigate my way around the code base, especially for these giant applications that have been around for 10 years.
It's nice to have teammates where you can say like, "hey, I need to, I'm supposed to work on this component, where is it?" And then they give you the file path to go find it.
So overall, I think it's been really great to have a team that is ready to answer your questions and support you as you kind of onboard very slowly over the year.
Mario: What is a day in the life at Block? What is a week in the life? What is a year in the life at Block? Is there still that one and a half hour commute?
Lauren: No, so, Block is fully remote, which is pretty cool. They do have offices. There's one in downtown Toronto. But I never go, so I still work remote. I work from home, and I mean, there's a normal software development day-to-day stuff. Usually JIRA tickets I'm tackling, or tasks that have just fallen into my lap from however the projects progressing. Depending on the week, now I have an on call rotation at block because we- my team is responsible for applications that have very high impact and high visibility.
So obviously someone has to be around in case something goes wrong. This is compared to RBC. My team didn't actually own any applications. We would develop something and hand it off. So there was no responsibility for maintaining it.
Lauren: Yeah. Yeah, exactly. So on call rotation every couple weeks where you might deal with issues if something breaks or handling kind of admin tasks for any other employees at the company who have questions about the applications you own.
And then various meetings. You know, stand up, like I mentioned earlier. Planning for sprints. If anyone's not familiar with the concept, it's like it's a 2 week period where you're planning out what you're going to do and accomplish during that time.
And then the other thing that I've had the chance to do is designing. So sometimes you might write a document to call it a design doc to plan a new feature or application or change. So, that's a whole document you write out, you explain everything. You have to take into account, not just the actual code changes that you're going to make, but also the different business requirements and legal requirements, especially when you're handling secure data.
So, I think that's been an interesting and new skill to develop. In this case, you're making changes to applications that are used across the company or have an effect on clients outside of Block. So, there is a whole you know process of writing a document detailing what you're going to do, how you're going to do it, how you're going to make sure you're not breaking any legal requirements or legal standards.
And then there's a whole review process where your team is going to look at it and evaluate the engineering aspect of it. And then, you might pass it off to called the compliance team and make sure your new design doesn't, I don't want to say not comply, but make sure your new design is compatible with various legal standards that are in place.
Diane: I was going to say it sounds like this is showing a a real broadening out of your responsibilities from the early days when you would take a ticket, do a ticket in, and the those would probably be small in scope. Implement some function or, I don't know, fix a bug. And, now you're tackling bigger jobs and getting into the design side of things and broader considerations such as compliance. So, there's real growth shown in your responsibilities.
Lauren: Yeah, I would say so. I think over the years you develop a better big picture idea of where, of how the work you're doing is having an impact on the business and on other teams. Whereas just starting off, you know, as an undergrad in an internship, you're mostly concerned with how does the work affect the product I'm working on. Which is not a bad thing, but it's just an example of how, over the years, the scope of your understanding grows.
Diane: That's very comforting, I imagine, to hear that because I think undergrads who read your profile on LinkedIn and see what you do, there's lots of words that are, what are those? What do those mean? How would I ever get to that point? But by hearing you describe the transition, it seems very doable.
Mario: Yeah, I think what's also very interesting to me is, you know, like programming is, is a part of your job, but it's not a, it's not necessarily the only part of your job. And it sounds like there's all these other facets to it now, especially as you become.
Mario: I'm wondering which courses maybe helped prepare you for maybe your first job at RBC or for this job in Block? What are your recommendations to existing students at the University of Toronto?
Lauren: The first one that comes to mind that was most helpful for my first internship at MindBridge AI was CSE 209 just because they teach you to use Linux and the terminal and everything. Which is, you know, pretty foundational to whatever you do, whatever you're developing.
Mario: That is the highlight of this episode. Unix and the command line.
Diane: Mario's now very fulfilled.
Lauren: But other than that. Oh, CSC373. That's the algorithms and data structures. Yeah. So that I don't necessarily use day-to-day in my job, but it is very, very helpful for interviewing because a lot of companies have LeetCode style questions, so they're called. I don't know if anyone listening isn't familiar with LeetCode. It's a site online that gives you a bunch of programming questions, and they're all very algorithmic.
There's different levels, but the content you learn in CSC373 is basically how to solve most of them. So that is definitely very, very helpful.
Mario: So would you say these types of questions - because I know you've interviewed, you know, two internships, you also interviewed, presumably for Block - did you have those questions after being an experienced developer?
Lauren: I didn't personally have them just because Block is trying to move away from that style of interviewing. I think just because if you do enough of those LeetCode questions, you could just know the answers and it doesn't necessarily demonstrate your skill, but I know that outside of Block lots of other companies still ask those questions, even for senior developers.
But other courses? There's a lot of courses that you end up applying. Like you know, CSC207 for good software design principles, CSC 343 just to be able to use and interact with the databases.
Mario: And just to be clear, Lauren has not taken CSC343 with Diane, so she was not paid to say that.
Diane: Oh yeah, no. I didn't bribe you to say that although I do think it is an excellent course.
Lauren: And there's a networking course and I can't remember what the course code is. I think that's very helpful. think I forgot a lot of it, to be honest. But when things come up it like it triggers a memory at the back of my brain. Like oh man, I should know that.
Diane: It's in there.
Lauren: Yeah, yeah, yeah.
Diane: I wanted to ask if there were things outside of your courses that have been helpful in your career because you were very involved in all kinds of things. You were a TA. You were in the Technology Leadership Initiative. You were an assistant peer mentor for the SLC program, the second year learning community. So you had all this co-curricular and the TA ship, did any of that help you?
Lauren: Starting off with the Technology Leadership Initiative, I think that was helpful just because that's honestly how I met most of my friends.
And obviously, like I said, they ended up referring me to jobs later on, so that's great. But also meeting people through that and having that kind of support network over the years is definitely very valuable.
And that's not even mentioning, you know, all the lessons you learn while you're in TLI. But networking about the industry and knowing what to expect and learning about what kind of roles you want to take a look at as you graduate?
And then outside of TLI would say the other experiences I had in undergrad helped develop soft skills. I am not naturally gifted at speaking to people, that might be obvious in this podcast, so developing soft skills about talking to people, talking to strangers, you know? Providing guidance sometimes as an assistant peer mentor, and kind of introspecting as you do that on your own experiences and then sometimes having some realizations about where you want to go with your own life because of it. I think that's all been very helpful.
Mario: What else can people prepare, other than LeetCode, when going into interviews for their first job or for their second job?
Lauren: I think it there's a difference between interviewing for your first job and your second job just because when you're interviewing for your first job, they're not expecting you to come in necessarily with that much experience and industry knowledge.
Again, this might differ company from company. Some companies are probably way more competitive, and so you know any bit of experience helps. But in general, they're- I think they rely more on the technical skills that you show during your interview and they are generally more focused solely on your immediate like technical programming coding skills.
Whereas when you go for your second round of job hunting, maybe couple years in, they expect you to have more knowledge than just coding. I did a software design interview, like software design, software architecture. So, that involves understanding more concepts about scalability, availability, and knowing how you would provide that even if you've never actually done it at your job before.
So there's more... like we talked about scope before, they expect you to have a broader scope of knowledge when you go into job hunting, say couple years into your career.
Mario: Any parting advice for current students listening to this podcast episode?
Lauren: I think my general advice is... to- this sounds bad but don't work too too hard. I think there's a certain culture or mindset that encourages students and new graduates to just work hard 12 hours a day, join 3 clubs, have 5 side projects. You know, get a 4.0. Have 12 internships. You know.
There's a lot of pressure to do so many things. And, there's also a lot of pressure when you feel like you're falling behind on those things and you can't catch up. But I would say that, realistically, you're going to be fine if you don't do those 5 million things. If you know what you're good at and you succeed in that aspect, I think you're pretty much set up.
I think UofT prepares you really well for a life after graduation and I think that it's important to be kind to yourself and understand what you want out of your career.
If you want to have a grind set and go all day work at a startup, dedicate your whole life to that because you're excited about it and you're passionate, then I think that's awesome and you should go for it.
But if you you know you like computer science, you like software engineering, but it's not your greatest passion in life, and you're just looking for a fulfilling job to do for your 9:00 to 5:00, I think that's also valid and you don't need to feel bad for wanting that out of life.
Diane: That is a really, really wise answer.
Mario: Thank you so much Lauren, for joining us today.
Lauren: Well, thank you for having me.
Mario: That was a lot of great advice from Lauren. Diane, what stuck with you?
Diane: A couple of things about internships, Mario. First of all, she said you should expect not to know everything in your first internship, and I imagine that would be very comforting to students who are going out or considering going out into their first job.
And she said, ask questions. Don't be shy about that.
00:36:45 Diane
Also, Lauren told us that internship experience is really vary one to the other, so it's really great to have more than one if you're able, and this can also help you figure out what you want to do after you graduate and what you don't want to do.
Mario: That's right. Lauren had some misconceptions, that, you know, not everything is about JIRA tickets and she discovered that later on in her career.
Some things for me, was the networking effect. So, the your peers and your classes are your referrals in your professional career, so make sure that you're establishing some great connections and some good relationships with your peers right now.
And it seemed like there are some unique challenges to remote work. I think more and more often we have companies that are allowing people to work from home. So think about, you know what works best for you. And if you do end up with a fully remote or partially remote job, make sure you're getting what you need to thrive. May have to actually advocate for yourself, since this is a relatively new format for many companies.
Diane: Yeah, the speaking up and saying what you need has come up a lot in all of our episodes. I think it's important.
Mario: I agree.
My name is Mario Badr.
Diane: And I'm Diane Horton.
Mario and Diane: And you are in the loop.