Инженер по продакшн-инжинирингу
Местоположение: Мельбурн / au
Присоединяйтесь к команде, которая меняет представление мира о дизайне.
Привет, g'day, kia ora, 你好, hallo, vítejte!
Спасибо, что заглянули. Мы знаем, что поиск работы может отнимать много времени, и вы, вероятно, хотите узнать, что мы предлагаем, поэтому перейдем сразу к делу.
Чем вы будете заниматься на этой должности
Команда продакшн-инжиниринга находится на стыке разработки программного обеспечения и самых сложных проблем надежности в инфраструктуре Canva. Написание программного обеспечения, которое изменяет поведение продакшена при 240 миллионах MAU и продолжает расти.
Стратегическая ставка — совершенно иная модель. Собственный взгляд Canva на то, как выглядит надежность продакшена, построенный с учетом нашего рабочего процесса. Старшие инженеры-программисты, на долгосрочной основе погруженные в области, несущие наибольший технический риск, работают плечом к плечу с продуктовыми командами, достаточно близко к дорожной карте, чтобы формировать то, как она будет реализована в продакшене, прежде чем проблемы усугубятся. Не операционализация систем. Не запуск оповещений. Написание программного обеспечения, которое изменяет поведение продакшена.
Инженеры, которые хорошо справляются с этой работой, глубоко погрузились в системы, которыми большинство людей только управляют. Они могут зайти в кодовую базу, которую не писали, понять, что на самом деле происходит в масштабе, завоевать техническое уважение команды, к которой они прикреплены, а затем улучшить программное обеспечение, чтобы сделать его более надежным, более эффективным и более устойчивым.
В настоящее время эта роль сосредоточена на:
- Владение областью взаимодействия: Долгосрочная ответственность за одну из технических областей Canva с наивысшим риском, шардинг основных хранилищ данных, утилизация ресурсов, проблемы распределенных систем в масштабе, встроенные в команду, которая ими владеет.
- Написание продакшн-программного обеспечения: Работа заключается в коде, а не в процессе. Инструментирование, рефакторинг, перестройка частей, вызывающих проблемы в масштабе. Вы прежде всего инженер-программист; конечный результат надежности в масштабе — это то, что вы оптимизируете.
- Сотрудничество: Возможность работать в паре, наставлять и учиться у других продакшн-инженеров.
- Клиентоориентированность: Стремление к уменьшению числа инцидентов, ускорению восстановления, снижению серьезности, направлению задержки в нужное русло. Гордость за улучшение метрик, положительно влияющих на качество клиентского опыта.
- Вклад в платформу: Там, где вы видите паттерн, требующий общей функциональности, вы возвращаете его, не чтобы владеть им неопределенно, а чтобы заложить основу для работы платформы, которая масштабируется за пределы вашей области взаимодействия.
- Усиление на уровне системы: Один инженер, который по-настоящему понимает систему, может изменить то, как каждый другой инженер строит поверх нее. Это рычаг этой роли, и поэтому архетип важнее области.
Как выглядит успех: Как командированный сотрудник, вы развиваете доверительные отношения с вашей командой. Направляете их к быстрой и уверенной доставке с меньшими трудозатратами.
Вероятно, вы нам подходите
Мы будем рады услышать вас, если вы соответствуете одному или нескольким из этих критериев. Вам не нужно соответствовать всем им, но чем больше, тем лучше, и если вы присоединитесь к команде, мы будем инвестировать в ваше развитие.
Опыт
- Продакшн в масштабе: Ответственность за работу по обеспечению надежности в крупномасштабных распределенных системах. Когда что-то ломалось, вы писали исправление, а не заявку.
- Встроенная доставка: Ранее работали в качестве инженера, встроенного в продуктовые или функциональные команды или тесно сотрудничающего с ними, а не в изолированной платформенной организации, которая перебрасывает инструменты через забор.
- Глубокие знания JVM или систем: Вы создавали реальные вещи на Java, Go, Rust, C++ или сопоставимом системном языке в продакшн-масштабе; коммерческая глубина, а не академическая знакомость. Мы гибки в отношении языков для подходящего инженера, но вы должны прийти и выиграть технический поединок на первой встрече.
- Распределенные системы на практике: Навигация по шардингу, репликации, режимам сбоев, компромиссам согласованности в реальных системах.
- Отладка больших кодовых баз: Способность быстро ориентироваться в незнакомой кодовой базе, быстро понять, где на самом деле находится проблема, и исправить ее.
- Влияние без полномочий: Доказанная способность улучшать системы благодаря мудрости и доверию.
Технические знания
- Глубокие знания сетей: Вы знаете сетевой стек и как выглядит трафик в масштабе.
- Внутренние компоненты Linux: Достаточное понимание на уровне ядра, чтобы рассуждать о том, что на самом деле происходит, когда система ведет себя некорректно: планирование процессов, память, ввод-вывод, сетевой стек.
- Паттерны распределенных систем: Хеширование с постоянством, выбор лидера, консенсус, обратное давление, автоматические выключатели.
- Инструменты наблюдаемости: Вы действительно инструментировали системы, создавали трассировки, панели мониторинга, оповещения, которые действительно сообщают вам, что не так. Вы понимаете разницу между причинными оповещениями и оповещениями на основе симптомов и знаете, как выглядит хороший SLO.
- Контейнеризация и оркестрация: Kubernetes в продакшн-масштабе, вы понимаете, что происходит на уровне планировщика.
- Анализ производительности: Вы профилировали JVM-приложения или системные процессы, нашли то, на что никто не обращал внимания, и исправили это так, чтобы это осталось.
- Облачная инфраструктура: AWS на достаточно глубоком уровне, чтобы понимать, как они ведут себя под нагрузкой и на периферии.
- Реагирование на инциденты на практике: Вы были на дежурстве в серьезной продакшн-среде и имеете свое мнение о том, как на самом деле выглядит хорошее управление инцидентами.
Приятные бонусы
- Опыт работы с Enterprise SaaS: Вы занимались этим видом работы в организации, которая делала это хорошо. Вы знаете, что такое "продакшн-инжиниринг", когда это не просто название должности.
- Внутренние компоненты JVM: Вы настраивали GC и профилировали потоки в продакшене.
- Опыт работы с мультирегиональностью или шардингом: Вы участвовали в миграции хранилища данных или многорегиональной архитектуре, где ошибки были недопустимы.
- eBPF или инструментация ядра: Опыт работы в продакшене — ценный опыт.
О группе и команде
Присоединяйтесь к группе продакшн-инжиниринга в Canva, где наша миссия — сделать каждую систему, которая поддерживает Canva, быстрой, надежной и готовой к следующему масштабу. Infra отвечает за уровень инфраструктуры, на котором строят все остальные команды: вычисления, хранение, сети, опыт разработчиков и надежность.
Подгруппа Reliability Platform — это место, где Canva серьезно задумывается о технических рисках, связанных с работой при сотен миллионов пользователей. Это группа с широкой областью применения: от инструментов, помогающих командам хорошо проводить инциденты, до инженерной работы, предотвращающей инциденты в первую очередь.
Продакшн-инжиниринг находится в рамках Reliability Platform. Небольшая команда старших инженеров-программистов, внедренных в наиболее рискованные технические области Canva, работающая бок о бок с продуктовыми и инфраструктурными командами, которые владеют этими системами в рамках долгосрочных проектов. Когда это работает, другие команды более уверенно выпускают продукты, а происходящие инциденты разрешаются быстрее и причиняют меньше вреда.
Что это даст вам?
Достижение наших сумасшедших больших целей мотивирует нас усердно работать — и мы это делаем — но вы также будете испытывать много моментов волшебства, связи и веселья, вплетенных в жизнь в Canva. Мы также предлагаем ряд льгот, которые помогут вам достичь успеха как на работе, так и за ее пределами.
Вот краткий обзор того, что предлагается:
- Пакеты акций — мы хотим, чтобы наш успех был и вашим успехом
- Инклюзивная политика отпусков по уходу за ребенком, поддерживающая всех родителей и опекунов
- Ежегодный фонд Vibe & Thrive для поддержки вашего благополучия, социальных связей, обустройства рабочего места и многого другого.
- Гибкие варианты отпуска, которые дают вам возможность делать добро, отдыхать и поддерживать себя лично.
Другие важные моменты?
Мы рассматриваем ИИ как мощный усилитель творчества и технологий в Canva. Мы развиваем наш подход к оценке навыков ИИ в процессе найма в сфере технологий — вы будете решать интерактивные задачи в реальном времени, отражающие нашу работу. На некоторых собеседованиях вас также могут попросить решить задачу с использованием инструмента ИИ, чтобы показать, как вы подходите к решению задач с помощью технологий.
Мы принимаем решения о найме на основе вашего опыта, навыков и увлеченности, а также того, как вы можете обогатить Canva и нашу культуру.