Senior Backend Software Engineer - Java - RPC

2 Months ago • 5 Years + • Backend Development

Job Summary

Job Description

Canva seeks a Senior Backend Software Engineer with 5+ years of experience in developing sophisticated distributed web applications on the JVM, primarily using Java 17 (other JVM languages a plus). The role involves designing and implementing tools/libraries to improve microservice reliability, conducting reliability experiments, building services ensuring optimal and resilient microservices, and participating in cross-team initiatives to enhance reliability, velocity, and security. Responsibilities include investigating production incidents, researching and proposing solutions, identifying performance bottlenecks, and contributing to the future-proofing of Canva's distributed cloud infrastructure. Strong communication, teamwork, and problem-solving skills are essential.
Must have:
  • 5+ years Java development experience
  • Experience with distributed systems
  • Asynchronous/reactive programming
  • AWS cloud experience
  • Strong communication skills
Good to have:
  • Experience with Scala/Kotlin
  • RPC Frameworks (Finagle, Thrift, gRPC)
  • Knowledge of networking protocols (TCP, HTTP2)
Perks:
  • Equity packages
  • Inclusive parental leave
  • Annual Vibe & Thrive allowance
  • Flexible leave options

Job Details

Job Description

Join the team redefining how the world experiences design.

Hey, g'day, mabuhay, kia ora,你好, hallo, vítejte!

Thanks for stopping by. We know job hunting can be a little time consuming and you're probably keen to find out what's on offer, so we'll get straight to the point. 

Where and how you can work

Our flagship campus is in Sydney. We also have a campus in Melbourne and co-working spaces in Brisbane, Perth and Adelaide. But you have choice in where and how you work. That means if you want to do your thing in the office (if you're near one), at home or a bit of both, it's up to you. 

What you’d be doing in this role

As Canva scales change continues to be part of our DNA. But we like to think that's all part of the fun. So this will give you the flavour of the type of things you'll be working on when you start, but this will likely evolve.

At the moment, this role is focused on:

  • As an individual contributor, you will design and implement tools and libraries to improve the reliability of the Canva microservices
  • Conduct and organize reliability experiments to identify possible scenarios in which failures might occur and verify the reliability measures
  • Design and build services and tooling that help ensures each of Canva’s microservices are working optimally and are resilient to failures
  • Have a widespread impact across the organization by facilitating and orchestrating cross-team initiatives that set a higher standard for reliability, velocity and security
  • A deep investigation into production incidents followed up by applying the learning to code
  • Researching, developing, and justifying the best choices in the form of design docs for features that will shape the future of Canva
  • Identifying and addressing performance bottlenecks within the application and broader infrastructure
  • Propose innovative approaches and solutions to ensure we future-proof Canva’s distributed cloud infrastructure as we scale. Participating in design meetings, hiring interviews, and code reviews

You're probably a match if

  • Five-plus (5+) years of commercial experience developing sophisticated distributed web applications on the JVM; experience writing Java (experience with other JVM languages such as Scala, Kotlin, etc is a huge plus - however, we primarily use Java 17)
  • Familiar with asynchronous or reactive programming techniques and associated patterns; At our scale, writing blocking code is often not an option
  • Comfortable with computer science and engineering fundamentals: concurrency, data structures, and distributed systems
  • Experience working in large distributed cloud environments (ideally AWS)
  • Disciplined coding practices, experience with code reviews and pull requests, and a creative and conceptual problem-solving approach as opposed to a framework or library-focused; We strive to build fast and lean solutions; not library/framework-heavy patchwork
  • Strong communication and teamwork skills, both written and verbal. A Canva engineer strives to understand the exact problem before jumping into writing code - look before you leap!
  • Experience with RPC Frameworks, Finagle, Thrift or gRPC will be a huge plus, but not required; We strive to make sure that the communication layer is not a bottleneck, and simplifies the life of the product engineers as much as possible
  • Knowledge of networking protocols such as TCP, HTTP 2, etc. would be a big plus; The life of a request doesn't start inside the backend web server, but rather in the browser of a user
  • An understanding of resiliency techniques and patterns - load balancing, throttling, back pressure, deadline propagation, circuit breaking, etc; For Canva, reliability is a feature, and the API Platform and broader infrastructure teams aim to provide the best tools possible to the application engineers to ensure that Canva stays available at all times. 

About the team

The RPC team's mission is to make inter-service communication simple, reliable, secure and performant. The RPC team is responsible for client & server components that all our backend services use to communicate with each other, which directly affects the performance and reliability of those services. We are currently facing exciting challenges to uplift platform capabilities to prepare Canva for 1 billion monthly active users.

About the Role

This role sits within the RPC Team. As a versatile senior software engineer, you will be responsible for shaping the vision of service communication on our platform. We are part of the API Platform, and our mission is to empower engineers to build efficient, reliable, and secure traffic flow for billions of users.

What's in it for you?

Achieving our crazy big goals motivates us to work hard - and we do - but you'll experience lots of moments of magic, connectivity and fun woven throughout life at Canva, too. We also offer a stack of benefits to set you up for every success in and outside of work.

Here's a taste of what's on offer:

  • Equity packages - we want our success to be yours too
  • Inclusive parental leave policy that supports all parents & carers
  • An annual Vibe & Thrive allowance to support your wellbeing, social connection, office setup & more
  • Flexible leave options that empower you to be a force for good, take time to recharge and supports you personally

Check out lifeatcanva.com for more info.

Other stuff to know

We make hiring decisions based on your experience, skills and passion, as well as how you can enhance Canva and our culture. When you apply, please tell us the pronouns you use and any reasonable adjustments you may need during the interview process. 

Please note that interviews are conducted virtually. 

Similar Jobs

Google - Senior Software Engineer, Android, Find My Device

Google

Bengaluru, Karnataka, India (On-Site)
1 Month ago
Crunchyroll - Senior Engineering Manager, Membership

Crunchyroll

San Francisco, California, United States (Hybrid)
6 Months ago
ByteDance - Software Engineer Intern (CDN/Edge/Traffic Platform)

ByteDance

San Jose, California, United States (On-Site)
2 Months ago
jetbrains - Senior Software Developer (PyCharm, Runtime)

jetbrains

Yerevan, Yerevan, Armenia (On-Site)
3 Weeks ago
Zeta - Software Development Engineer in Test I / II

Zeta

Hyderabad, Telangana, India (On-Site)
7 Months ago
VGW - Software Engineer

VGW

Krakow Am See, Mecklenburg-Vorpommern, Germany (On-Site)
3 Months ago
Epic Games - Senior C++ Engineer, Native Client

Epic Games

(On-Site)
1 Month ago
Playrix - Principal Golang Engineer (Cross-Game Server)

Playrix

Ireland (Remote)
1 Month ago
GoTo Group - One KYC Backend Engineer

GoTo Group

Bengaluru, Karnataka, India (On-Site)
7 Months ago
ByteDance - Software Engineer, Video-On-Demand

ByteDance

Singapore (On-Site)
7 Months ago

Get notifed when new similar jobs are uploaded

Similar Skill Jobs

Arcadia - Senior Engineering Manager - Python

Arcadia

Chennai, Tamil Nadu, India (Hybrid)
2 Weeks ago
Hacksaw Studios - Game Client Framework Developer

Hacksaw Studios

Stockholm, Stockholm County, Sweden (Remote)
9 Months ago
Sumo Logic - Senior Technical Success Engineer

Sumo Logic

India (Remote)
3 Weeks ago
Red Point Labs - Java Backend Developer (Remote OK)

Red Point Labs

Argentina (Remote)
1 Year ago
Netflix - Full-Stack Engineer (L5)

Netflix

Warsaw, Masovian Voivodeship, Poland (On-Site)
3 Months ago
Playrix - Director of Engineering

Playrix

Montenegro (Remote)
7 Months ago
Dream Games - Senior Software Engineer

Dream Games

İstanbul, Türkiye (On-Site)
1 Year ago
Colo pl - Infrastructure Engineer

Colo pl

Minato City, Tokyo, Japan (On-Site)
1 Month ago
ByteDance - Algorithm Engineer - Enterprise Solution R&D

ByteDance

San Jose, California, United States (On-Site)
3 Months ago
Google - Software Engineer, PhD

Google

Kirkland, Washington, United States (On-Site)
1 Month ago

Get notifed when new similar jobs are uploaded

Jobs in Auckland, Auckland, New Zealand

Cubic Corporation - Workshop Supervisor

Cubic Corporation

Wellington, Wellington, New Zealand (On-Site)
1 Month ago
Canva - Engineering Manager (BE Java / Python - Platform) - Design Generation Platform

Canva

Auckland, Auckland, New Zealand (Remote)
3 Weeks ago
Canva - Machine Learning Engineer Lead - User Voice

Canva

Auckland, Auckland, New Zealand (Remote)
1 Month ago
Philips - Customer Project Manager - Diagnostic Imaging and Image Guided Therapy NZ

Philips

Auckland, Auckland, New Zealand (On-Site)
1 Month ago
Canva - Design AI - ML Engineering Manager

Canva

Auckland, Auckland, New Zealand (Remote)
2 Months ago
xplor - Systems Test Engineer

xplor

Auckland, Auckland, New Zealand (On-Site)
1 Month ago
Mozilla - Director of Product, Firefox Growth

Mozilla

New Zealand (Remote)
2 Weeks ago
Zuru - Social Media Executive

Zuru

Auckland, Auckland, New Zealand (On-Site)
3 Weeks ago
Canva - Senior Frontend Engineer - Ecosystem Experiences

Canva

Auckland, Auckland, New Zealand (Remote)
1 Month ago
Canva - Fullstack Software Engineer - Video Compositor

Canva

Auckland, Auckland, New Zealand (Remote)
1 Month ago

Get notifed when new similar jobs are uploaded

Backend Development Jobs

Applike Group - Senior Go Backend Developer (Anti-Fraud) (f/m/d)

Applike Group

Hamburg, Hamburg, Germany (Hybrid)
7 Months ago
Pocket Worlds - Staff Backend Engineer - Infrastructure

Pocket Worlds

Poland (On-Site)
2 Months ago
Sporty Group - iOS Engineer

Sporty Group

(Remote)
4 Months ago
Google - Software Engineer III, Site Reliability Engineering

Google

Sunnyvale, California, United States (On-Site)
1 Month ago
Google - Software Engineer, Site Reliability Engineering

Google

Dublin, County Dublin, Ireland (On-Site)
1 Month ago
Simple Viral Games - Lead Software Developer

Simple Viral Games

Bengaluru, Karnataka, India (On-Site)
10 Months ago
The Walt Disney Company - Principal Software Engineer - Java

The Walt Disney Company

Bristol, Connecticut, United States (On-Site)
1 Month ago
YallaPlay - Backend Engineer

YallaPlay

(Remote)
1 Month ago
Hawk Eye Innovations - Mid-Level Java Engineer

Hawk Eye Innovations

Budapest, Hungary (Hybrid)
2 Months ago
Epic Games - Senior Engineer, Data Platform

Epic Games

(On-Site)
1 Month ago

Get notifed when new similar jobs are uploaded

About The Company

Auckland, Auckland, New Zealand (Remote)

Adelaide, South Australia, Australia (Remote)

Auckland, Auckland, New Zealand (Remote)

Auckland, Auckland, New Zealand (Remote)

Austin, Texas, United States (Hybrid)

Austin, Texas, United States (Remote)

Auckland, Auckland, New Zealand (Remote)

Auckland, Auckland, New Zealand (Remote)

Sydney, New South Wales, Australia (Remote)

Berlin, Berlin, Germany (On-Site)

View All Jobs

Get notified when new jobs are added by Canva

Level Up Your Career in Game Development!

Transform Your Passion into Profession with Our Comprehensive Courses for Aspiring Game Developers.

Job Common Plug