December 14, 2021

Partners@CS101: Meet the Backend Software Engineer from Canva, Tom Nugent


We are proud to partner with some of the world’s most innovative technology companies to ensure that CS101 provides learners with the skills necessary to succeed in the digital economy. Our Partners@CS101 series will uncover bright, professional talents with various backgrounds and expertise. Whether you are exploring potential career pathways, curious about the evolving tech world or just need some advice - hear from these experts!

This week we’d like to introduce to you: Canva. Launched in 2013, Canva is a free online visual communications and collaboration platform with a mission to empower everyone in the world to design anything and publish anywhere.

Meet Tom Nugent, the backend software engineer at Canva. Tom graduated from the University of Queensland in July 2021 with BE (Hons) / BSc, majored in Mechatronic Engineering and Computer Science. Today, we’ll discover a little more about his passion and his Canva journey so far.

Tell me about your role at Canva. What do you do?

I work in the Online Presence team, where we’re building a new responsive website editor product - a new way to design and host your own website completely in Canva! I’ve been working on some aspects of managing website deployments with a database, as well as supporting text effects, which means I’m writing Java code that writes CSS.

Most of my day is learning about the existing code and architecture, and working on coding tasks. I report to my team each day at a standup, and have a buddy and coach that help me get started on each task if needed.

What were some of the reasons you decided to come to Canva?

I had friends who worked or interned at Canva last year who wouldn't stop raving about it. The people and the exciting atmosphere; the product that they were actually passionate about; the Season Opener celebrations; and the values that the team stand for. It felt right to work for a company that promotes being a good human, in work and in aspects that extend beyond just the product.

What is the most interesting technical challenge Canva is solving?

Canva’s mission is to empower the world to design, which means we need to create and scale a platform for use by billions of people. That’s a huge challenge, and one we’ll likely be solving and iterating on forever.

What are you working on right now that you’re excited about?

I've just delivered my first end-to-end feature, and am now the primary owner of the code, which supports text effects (e.g. shadow, glow, hollow text) within Canva websites. Although small, it's the first addition of mine (one of many I hope) that I can point to in the Canva editor -- or in someone's website design -- and say "I did that".

What made you choose your career?

I had very little idea what I wanted to do after finishing school. Software engineering would have been very low on the list of potential careers. I had never coded. I liked maths, physics and music. I was relatively good with computers but never surrounded myself with others who had programmed before. Yet when I took my first coding course, I found I really liked it, mostly because of how quickly you can make something actually do something. And I was pretty good at it although still very confronted by the notion that I was starting too late compared to my university peers.

The assumption that I was too late, or that I didn't fit the stereotype of a programmer was completely wrong. Over 6 years I've learnt plenty of languages, paradigms, theoretical computer science principles and more, and it's been by far the most interesting content I've had to learn.

It was pretty easy after noticing at University that a career in software was for me.

What’s the best career advice or quote you’ve ever received that motivates you?

I really like the quote "For luck to strike, increase your surface area." If you believe that everything in life comes down to luck (or to put it in math terms: everything has some probability of happening, almost always being non-zero), then you should pursue actions that increase the probability of those outcomes you want.

For example, the more people you meet, the more likely you are to meet someone you love, or someone who'd give you work, or someone who could help you meet another person you will like or work with.

I also advocate acting on advice: what good is good advice if you never act on it?

What advice would you give to someone who is looking to upskill or re-skill in Computer Science?

Find others who are hoping to upskill with you. The internet makes learning much nicer when there's a forum of people willing to help you.

Understand what it is that you want to learn: where it is relevant, why you'd need it, what can you do? Ask others for their thoughts. 

What impact do you expect programs like CS101 to make in closing the skills gap?

I'd expect to receive lessons and projects to learn and practice, as well as an online community to turn to for help, and eventually to give help.

What positive impact do you expect programs like CS101 to have on learners from traditional technical backgrounds (i.e., a degree in computer science)?

I’d expect these programs to deliver an accessible way to learn about an area that you don't understand, with projects that are relevant to modern software development. I'd hope programs like this could teach learners how to use the technologies that are used in industry, as well as the underlying concepts.

Looking to learn more about the world of Computer Science and CS101? Download our Course Syllabus below for a preview: