Meet Peter Nsaka, a mentor for Springboard’s Software Engineering Career Track.
Peter Nsaka is one of many software engineers enabling the “low-code revolution”–the advent of drag-and-drop website builders like Wix, Squarespace, and Webflow that enable non-programmers to establish a web presence for their small business. He’s a backend engineer at Shopify, a low-code platform for small businesses to set up an online store simply by uploading photos and descriptions of products, setting prices, and establishing a payment method.
He’s also pursuing graduate studies in AI at Stanford University because he wants to learn how to implement data models into software programs–a relatively new discipline at the nexus of software engineering and data science.
On top of that, he’s a member of the Springboard Mentor Advisory Board, a panel of top Springboard mentors who meet monthly to brainstorm solutions to improve the student experience.
Nsaka is deeply passionate about mentorship. Before Springboard, he informally mentored computer science students who were in their third or fourth year of college. But he soon realized that an informal setup with no checklist or agenda made it hard to track his mentee’s progress and ensure they got what they needed. When he discovered Springboard’s mentorship program, he learned about the power of structured mentorship. Using this approach, mentees self-match with a mentor who aligns with their interests, conversation are outcome- or topic-focused, and there are measurable goals associated with the mentor-mentee relationship.
“I really enjoy working at Springboard. At the end of my day, it’s very nice to get to talk to the students and keep up with them every week,” said Nsaka. “You get to watch them grow from knowing absolutely nothing to getting to the end of the program.”
What are you working on right now at Shopify? What are some problems you’re trying to solve?
I’m doing backend development, building off a bunch of APIs. Right now I am working on the deferred payment team. So basically, I’m enabling businesses that use Shopify to offer their customers deferred payment options. This is a trend now in B2C commerce where you buy now and pay later–say, 30 or 60 days from now. Building all that functionality has been fun but it’s been taking a while.
What makes it an interesting problem to work on?
What’s interesting is seeing how complex a problem can be when you are dealing with it at scale. Shopify powers commerce for more than one million businesses around the world, so there are lots of use cases and edge cases. For example, if a bug affects 0.5% of our client base, we’re talking about 5,000 companies. So making changes to the code is not easy.
Get To Know Other Software Engineering Students
You’re currently pursuing graduate studies in AI at Stanford. What do you hope to accomplish in your career by learning AI?
I want to learn how to use AI to solve complex problems. When you have a problem, you can basically come up with some code or an algorithm to essentially repeat the task, but using AI allows you to make sense of the data. Take predictive modeling, for example. This is one of the biggest use cases for AI in day-to-day software development–especially when you have a bunch of data, but you don’t know what the relationships are between the data points.
It’s not like there is a clear-cut formula where if you put in X, you always get Y. All you know is you have an input and you have an output, but you don’t know the relationship between the input and output. AI is very powerful in helping you actually draw that relationship.
It sounds a little bit like you’re describing being able to understand how black-box algorithms make decisions.
Software engineers don’t usually deal with those aspects of programming; it’s usually done by data scientists. Are you interested in becoming a data scientist?
No, but that’s a very interesting question. Data science is about getting useful context out of data. But there is a difference between getting this information in a static way versus in a continuous way. Implementing your data model into a piece of software that can constantly improve itself–that’s where the software engineering aspect comes in. I’m interested in learning how to implement data models into a piece of software, where the software adjusts itself based on the data.
Would you call that data engineering or is it still considered software engineering?
Those terms are very vague and people use them loosely, but I would probably call that data engineering, but there is still a whole lot of software engineering to go with it. It’s somewhere in between.
What do you like most about being a mentor at Springboard?
Before Springboard, I used to mentor computer science students in their second or third year of university, but it was very informal. Then I started to realize that providing structured mentorship was really important–meeting once a week rather than sporadically. Then I thought, maybe I can standardize the information I share instead of repeating the same information to different people. I wanted to create a study plan, gather content, and give my mentees a checklist.
When I found Springboard, I found that everything I was struggling to do had already been done by Springboard. Number one, the people who wanted mentorship were right there in front of me. Number two, you already have a very structured curriculum.
Springboard actually brought the concept of organized mentorship and showed me what it should look and feel like. It really changed my perspective on mentorship and making sure that the students were getting the absolute best of everything not just from the curriculum but from me.
What have you learned from your mentees?
I learned about the value of planning. I see the difference when a student comes into the program with a solid plan. You can’t finish the bootcamp in nine months if you don’t have a plan. Have you actually cleared space in your calendar? Don’t just say, “I’m going to put in 20 hours a week.” Is it 8:00 PM to 10:00 PM on Mondays and 9:00 PM to 11:00 PM on Wednesdays? How exactly is that laid out?
Another value I’ve learned is consistency. If there is only one word I could say to everyone about achieving goals, that’s it. Consistency. It’s about doing it regardless of whether you know how to do it, or if you feel like doing it. It’s better for you to wake up one morning at 9:00 AM and show up even if you’re absent-minded or sleepy.
Most Springboard students are career switchers. What unique value do they bring compared with someone who had a linear career in software engineering?
Most of the people I’ve seen succeed at Springboard are those who switch from a technical background, but there are notable exceptions to this rule. I have a student who switched from philosophy to software engineering. Another student has an associate’s degree in physics, and another one never went to university. They worked as a bartender for a long time, and now they’re switching to software engineering. Those students are doing extremely well.
In general, people with a technical background will find it way easier to switch to software engineering, but non-technical people will have to put in a lot of effort. As long as you’re consistent, you will definitely make it to the end.
What are some of the perceived barriers to breaking into the software engineering industry? Are they real?
People used to think that programmers were super smart people who type at 300 words per minute and don’t have good social skills. They see famous examples like Mark Zuckerberg and Bill Gates.
Society created this image around people who know how to code and as long as you physically, mentally, and emotionally did not fit into that box, you would think, there’s no way I can be a programmer. But recently, more and more people have started breaking into the industry and so others would see people just like them doing what they thought they couldn’t do.
Maybe you have a friend who used to work as a chemical engineer and now he works at Google. All of a sudden you’re like, maybe I can work at Google, too.
So it’s a representation problem?
Exactly. It’s representation in terms of gender, race, and even behavioral patterns. People also fail to realize that software companies need lawyers, data analysts, and non-technical people like any other company.
What do you look for when you’re screening and interviewing candidates for your team aside from foundational technical skills? What is that “star” factor?
During the coding challenges, you get an interviewee to go through a question in front of you. You are basically there to help them, but not to solve the question for them, obviously. Number one, you want to make sure this person understands basic concepts of software engineering. Number two, if they don’t know how to approach a problem, do they know the right questions to ask? As long as a person asks the right questions, then why not help? That’s really what the job is at the end of the day. You can’t know everything.
If you get an error saying “cannot find property weight of nil class” your question should be “Why is this nil? In what scenario could this be nil?” If someone can’t ask the right questions, then you can’t help them.
Anything else you’d like to add?
I want to give one last shout-out to Springboard. They’re doing an amazing job. I really enjoy working at Springboard. At the end of my day, it’s very nice to get to talk to the students and keep up with them every week. You get to watch them grow from knowing absolutely nothing to getting to the end of the program.
I’ve worked with a bunch of coding bootcamps part-time to see what the differences are, but Springboard has nailed it in terms of many things–especially accessibility. Some bootcamps require you to pay something like $12,000 upfront. Others say you have to study full-time. How many people have $12,000 lying around and can afford to leave their jobs and go full time?”
Since you’re here…
Were you one of the tens of thousands of workers impacted by this year’s tech layoffs? Springboard wants to help. Our new Career Reboot Scholarship is intended to assist job seekers from tech looking to upskill, reskill and stand out in a competitive hiring environment. Get $1,000 off any Springboard bootcamp in software engineering, data analytics, UX design, cybersecurity, tech sales, and more. Visit this page for eligibility requirements and to apply.