Описание вакансии:
О вакансии:
Эта вакансия для тех, кто выбрал программирование своим образом жизни, кто любит глубоко разбираться в технологиях и решать сложные нестандартные задачи. Здесь речь идёт о глубоком искреннем интересе и остром интеллекте.
Разработчики на этой позиции участвуют в создании кроссплатформенных сервисов, в основном для Android, Linux и Windows. Часто задачи связаны с многопроцессной архитектурой, контейнерами и разработкой на уровне операционных систем. Реже бывают задачи и по созданию обычных пользовательских приложений с UI. Вы сможете лучше понять это при знакомстве с тестовым заданием.
Обращаем внимание тех кандидатов, которые считают себя строго мобильными разработчиками, что в нашем понимании мобильная разработка в первую очередь подразумевает глубокое понимание специфики мобильных операционных систем, а вовсе не умение рисовать UI для клиентской части. Поэтому просим не возмущаться, когда в тестовом задании вы увидите много непривычных для вас технологий.
Разработчики на этой позиции участвуют в создании кроссплатформенных сервисов, в основном для Android, Linux и Windows. Часто задачи связаны с многопроцессной архитектурой, контейнерами и разработкой на уровне операционных систем. Реже бывают задачи и по созданию обычных пользовательских приложений с UI. Вы сможете лучше понять это при знакомстве с тестовым заданием.
Обращаем внимание тех кандидатов, которые считают себя строго мобильными разработчиками, что в нашем понимании мобильная разработка в первую очередь подразумевает глубокое понимание специфики мобильных операционных систем, а вовсе не умение рисовать UI для клиентской части. Поэтому просим не возмущаться, когда в тестовом задании вы увидите много непривычных для вас технологий.
Стартовые требования к кандидатам:
— уверенные знания Kotlin или Java;
— знание C++ или готовность быстро его изучить;
— знание Andoid SDK и готовность изучать Android NDK;
— базовое понимание архитектуры Linux-систем;
— наличие своих или учебных проектов на Java/Kotlin;
— умение пользоваться инструментами отладки;
— понимание модульности в проекте;
— умение применять шаблон проектирования Singleton;
— умение рефакторить собственный код;
— умение использовать документацию и ChatGPT для технических исследований;
Коммерческий опыт не является обязательным. Обязательным является высокий уровень интеллекта и целеустремлённость в изучении архитектурных решений и технологий.
— знание C++ или готовность быстро его изучить;
— знание Andoid SDK и готовность изучать Android NDK;
— базовое понимание архитектуры Linux-систем;
— наличие своих или учебных проектов на Java/Kotlin;
— умение пользоваться инструментами отладки;
— понимание модульности в проекте;
— умение применять шаблон проектирования Singleton;
— умение рефакторить собственный код;
— умение использовать документацию и ChatGPT для технических исследований;
Коммерческий опыт не является обязательным. Обязательным является высокий уровень интеллекта и целеустремлённость в изучении архитектурных решений и технологий.
Обязанности:
— разработка кроссплатформенных приложений и сервисов на KMP и С++;
— проведений исследований и поиск технологических решений нестандартных задач;
— упаковка функционала в бинарные SDK с обёртками для Kotlin/Java;
— написание тестов и отладка собственного кода;
— документирование собственного кода текстом и схемами;
— работа в команде разработчиков;
— отчётность и участие в регулярных собраниях;
— строгое соблюдение дедлайнов по поставленным задачам.
— проведений исследований и поиск технологических решений нестандартных задач;
— упаковка функционала в бинарные SDK с обёртками для Kotlin/Java;
— написание тестов и отладка собственного кода;
— документирование собственного кода текстом и схемами;
— работа в команде разработчиков;
— отчётность и участие в регулярных собраниях;
— строгое соблюдение дедлайнов по поставленным задачам.
Какие форматы сотрудничества мы предлагаем на выбор:
— удалённая работа с возможностью посещения офиса в Москве;
— полностью удалённая работа для жителей других городов.
— полностью удалённая работа для жителей других городов.
Условия сотрудничества:
Мы предлагаем индивидуально в зависимости от текущей потребности в специалистах в данный момент времени и от качества реализации тестового задания.
Мы хорошо относимся к сотрудничеству со студентами технических ВУЗов, поэтому рассматриваем гибкий график работы с общей занятостью 45 часов в неделю.
Мы хорошо относимся к сотрудничеству со студентами технических ВУЗов, поэтому рассматриваем гибкий график работы с общей занятостью 45 часов в неделю.
Какие качества характера и ценности способствуют работе в нашей команде:
— интерес к программированию, как к образу жизни;
— интерес к решению сложных нестандартных задач;
— привычка самостоятельно обучаться, пользуясь любыми источниками;
— практичность при поиске решения задачи, стремление к обоснованной оптимизации;
— выбор в пользу надёжных стабильных решений;
— открытость к сотрудничеству в команде программистов в реализации общего проекта;
— чувство ответственности за результат перед самим собой и командой.
— интерес к решению сложных нестандартных задач;
— привычка самостоятельно обучаться, пользуясь любыми источниками;
— практичность при поиске решения задачи, стремление к обоснованной оптимизации;
— выбор в пользу надёжных стабильных решений;
— открытость к сотрудничеству в команде программистов в реализации общего проекта;
— чувство ответственности за результат перед самим собой и командой.
Отдельно скажем о такой ценности, как надёжность и стабильность технических решений:
При разработке сервисов мы выдвигаем особые требования к стабильности их работы и максимальной устойчивости к сбоям и паузам в работе. Зачастую приложения имеют статус системных сервисов и должны работать бесперебойно 24/7 в течение длительных периодов времени, даже на Android. Это специфика накладывает повышенные требования к детальной проработке алгоритмических решений, к учёту всех исключительных ситуаций, к пониманию управления ресурсами устройства и к в пользу стабильных низкоуровневых технологий. Проще говоря, надо глубоко вникать и нельзя пользоваться библиотеками без понимания, как они работают внутри.
С чего начать:
1. Отправьте нам заявку через форму ниже на этой странице, в сообщении можете кратко описать ваш опыт и стэк.
2. Свяжитесь с HR-менеджером в телеграме @bhdigitalhr с указанием, на какую вакансию вы откликаетесь. Обратите внимание, что первичный отбор специалистов для нас проводит команда Black Hammer Digital Teams, официальный телеграм-канал @blackhammerdigitalteams.
3. Если ваше резюме и портфолио нас заинтересует, то менеджер предложит вам выполнить тестовое задание, а вы сможете согласиться или отказаться от него.
4. Если тестовое задание выполнено в полном объёме, то менеджер предложит пройти собеседование уже с нашими разработчиками и расскажет об условиях сотрудничества.
5. После прохождения собеседования и появления взаимного желания сотрудничества, мы подключим вас к рабочим задачам, где вы постепенно будете в деле знакомиться и с командой.
2. Свяжитесь с HR-менеджером в телеграме @bhdigitalhr с указанием, на какую вакансию вы откликаетесь. Обратите внимание, что первичный отбор специалистов для нас проводит команда Black Hammer Digital Teams, официальный телеграм-канал @blackhammerdigitalteams.
3. Если ваше резюме и портфолио нас заинтересует, то менеджер предложит вам выполнить тестовое задание, а вы сможете согласиться или отказаться от него.
4. Если тестовое задание выполнено в полном объёме, то менеджер предложит пройти собеседование уже с нашими разработчиками и расскажет об условиях сотрудничества.
5. После прохождения собеседования и появления взаимного желания сотрудничества, мы подключим вас к рабочим задачам, где вы постепенно будете в деле знакомиться и с командой.
О тестовом задании:
Тестовое задание построено на базе специфических задач, с которыми мы постоянно сталкиваемся на практике. Изначально предполагается, что для успешной реализации тестового задания вам необходимо будем провести самостоятельное техническое исследование и изучить некоторые технологии, с которыми вы ранее не сталкивались совсем.
Для исследований и изучения мы с уверенностью заранее советуем вам использовать не только документацию, но и последнюю версию Chat GPT. Рассматривайте его не как способ писать код, а как способ быстрого получения знаний о конкретных технологиях и архитектурных решениях. Некоторые разработчики, пренебрегая этим инструментом, значительно ослабляют исследовательскую часть и могут выбрать заранее тупиковые варианты решения.
На реализацию тестового задания отводится от 2 до 4 недель с хорошим уровнем занятости и погружения. В индивидуальном порядке мы можем продлить этот срок, если вы уже выполнили значительную часть и вам объективно не хватает времени для полной реализации.
Обращаем внимание, что мы рассматриваем только задания выполненные целиком. Для подтверждения полной реализации задачи обязательно необходимо подготовить видео с демонстрацией исполнения кода на реальных устройствах. Заранее просим не присылать нам на оценку сырой недоделанный исходный код с мыслью "авось прокатит, я там много чего сделал, хотя и не всё". Ваш код будет проверен только в том случае, если он реально работает. В этом случае мы обязательно пригласим вас на собеседование.
Для исследований и изучения мы с уверенностью заранее советуем вам использовать не только документацию, но и последнюю версию Chat GPT. Рассматривайте его не как способ писать код, а как способ быстрого получения знаний о конкретных технологиях и архитектурных решениях. Некоторые разработчики, пренебрегая этим инструментом, значительно ослабляют исследовательскую часть и могут выбрать заранее тупиковые варианты решения.
На реализацию тестового задания отводится от 2 до 4 недель с хорошим уровнем занятости и погружения. В индивидуальном порядке мы можем продлить этот срок, если вы уже выполнили значительную часть и вам объективно не хватает времени для полной реализации.
Обращаем внимание, что мы рассматриваем только задания выполненные целиком. Для подтверждения полной реализации задачи обязательно необходимо подготовить видео с демонстрацией исполнения кода на реальных устройствах. Заранее просим не присылать нам на оценку сырой недоделанный исходный код с мыслью "авось прокатит, я там много чего сделал, хотя и не всё". Ваш код будет проверен только в том случае, если он реально работает. В этом случае мы обязательно пригласим вас на собеседование.
О собеседовании:
Обычно собеседование проводится по Zoom или Google Meet с нашими разработчиками в течение часа и состоит из следующих частей:
— Общие вопросы о вашем образовании, стэке и практическом опыте разработки;
— Вопросы по общей теории и вопросы по знанию Kotlin и/или Java;
— Несколько задач на лайвкодинг;
— Вопросы по коду вашего тестового задания;
На собеседование приходите со включённой вебкамерой и будьте готовы расшарить экран для демонстрации кода.
— Общие вопросы о вашем образовании, стэке и практическом опыте разработки;
— Вопросы по общей теории и вопросы по знанию Kotlin и/или Java;
— Несколько задач на лайвкодинг;
— Вопросы по коду вашего тестового задания;
На собеседование приходите со включённой вебкамерой и будьте готовы расшарить экран для демонстрации кода.
О карьерном росте:
В нашей команде безусловно можно и нужно развиваться. Карьерный рост — развитие навыков, более сложные задачи и повышения уровня дохода. На какие факторы следует обратить внимание, чтобы зарабатывать больше:
— абсолютная надёжность и бескопромиссная стабильность работы вашего кода;
— чистый отлаженный код с сопроводительной документацией;
— чёткое качественное соблюдение дедлайнов;
— исключение самодеятельности при работе в рамках заранее выбранной и согласованной архитектуры;
— самостоятельные технические исследования и решение нестандартных задач;
— погружение в низкоуровневые технологии;
— проектирование архитектурных и технологических решений;
— динамичное взаимодействие с командой, направленное исключительно на результат.
— абсолютная надёжность и бескопромиссная стабильность работы вашего кода;
— чистый отлаженный код с сопроводительной документацией;
— чёткое качественное соблюдение дедлайнов;
— исключение самодеятельности при работе в рамках заранее выбранной и согласованной архитектуры;
— самостоятельные технические исследования и решение нестандартных задач;
— погружение в низкоуровневые технологии;
— проектирование архитектурных и технологических решений;
— динамичное взаимодействие с командой, направленное исключительно на результат.
Об отношениях внутри:
Уважение и признание в команде основано на нескольких простых и понятных принципах:
— Вас уважают, если вы пишете продуманный стабильный код, который не крашится из-за множества неучтённых исключений, глупых ошибок или недостачного исследования при выборе решения.
— Вас уважают, если вы самостоятельно продумываете и формализованно описываете алгоритмические решения поставленных верхнеуровнево задач;
— Вас уважают, если вы самостоятельно проводите глубокое исследование и обоснованно предлагаете оптимальное технологическое решение задачи;
— Вас уважают, когда вы приходите на собрание с вовремя выполненным функционалом, который чётко работает.
Мы ценим друг в друге интеллект, приверженность делу и достижения в качестве и количестве решённых задач. Ещё мы далеки от формальностей и корпоративности, уважаем свободу мышления человека и нестандартные точки зрения.
— Вас уважают, если вы пишете продуманный стабильный код, который не крашится из-за множества неучтённых исключений, глупых ошибок или недостачного исследования при выборе решения.
— Вас уважают, если вы самостоятельно продумываете и формализованно описываете алгоритмические решения поставленных верхнеуровнево задач;
— Вас уважают, если вы самостоятельно проводите глубокое исследование и обоснованно предлагаете оптимальное технологическое решение задачи;
— Вас уважают, когда вы приходите на собрание с вовремя выполненным функционалом, который чётко работает.
Мы ценим друг в друге интеллект, приверженность делу и достижения в качестве и количестве решённых задач. Ещё мы далеки от формальностей и корпоративности, уважаем свободу мышления человека и нестандартные точки зрения.
Форма обратной связи