Разработчик Python/D‎jango департамента QAВакансия в архиве

18544818Разработчик Python/D‎jango департамента QAopen1066566DinectDinect102016-09-30T07:50:39.440+03:00Кемерово.113.222.1229.47.between3And680000RUR<p>Наша небольшая компания перешла на стадию, когда индивидуальных усилий разработчиков по улучшению качества отдельных продуктов и их покрытия тестами недостаточно. Требуется системный подход к обеспечению качества сервиса в целом, повышению эффективности QA отдела и систематизации подхода к тестированию, совершенствованию инфраструктуры и инструментария.</p> <p><strong>О вас:</strong></p> <ul> <li>Вы - опытный разработчик, умеющий работать с разными проектами и системами. Вы неоднократно выпускали в мир качественные релизы продуктов написанных на Python/Django. Linux, ssh и командная строка для вас - привычные инструменты. Вы не боитесь вносить правки в код приложений, для того чтобы помочь выпустить новую функциональность. Вы предпочитаете реализовывать инфраструктурные изменения в системе управления конфигурацией, вместо того чтобы делать это вручную. Вы любите автоматизировать операции и разрабатывать инструменты для повышения эффективности команды.</li> <li>Вы умеете конструктивно общаться с людьми, ищете обратную связь, учитываете чужой опыт и готовы делиться своим. То что вы пишете текстом отличается тактичностью и грамотностью, обычно вызывает мало вопросов, понимается однозначно и полезно тем кто с вами работает. Если вы ушли в отпуск, то ваши коллеги могут легко найти описание созданных вами инструментов и процессов и успешно воспользоваться ими. Вы без проблем читаете английскую документацию и можете отправить Issue или PR на Github в используемый вами Open Source проект.</li> <li>Вы можете построить полный тест-план проекта и выбрать требуемые для конкретного контекста способы тестирования (модульное, интеграционное, нагрузочное, ручное и др.). Вы способны выявить пробелы или дублирование в наборах тестов и оптимизировать процесс в целом. Умеете давать конструктивную обратную связь по чек-листам и автоматизированным тест-кейсам, обучать коллег лучшим практикам, выявлять хорошие решения и унифицировать их между проектами.</li> <li>Вы не представляете процесс разработки без средств Continuous Integration и автоматизированной обратной связи разработчикам по обнаруженным дефектам. Умеете готовить повторяемые тестовые окружения, собирать code coverage и метрики из приложений.</li> <li>Вы умеете создавать инструменты и инфраструктуру для нагрузочного тестирования веб-проектов, для вас не является проблемой найти причину низкой производительности в коде проекта и помочь разработчику её исправить. Совсем здорово, если вы умеете делать нагрузочное тестирование одним из этапов автоматизированного процесса контроля качества.</li> <li>Вы понимаете, что автоматическое тестирование не бесплатно и с одной стороны защищает от ошибок при рефакторинге и развитии, с другой - удорожает и замедляет реализацию больших изменений. Вы знаете когда нужно ограничиться минимумом тестов, а когда нужно обеспечить послойное тестирование всех уровней и точек взаимодействия. Вы умеете управлять техническим долгом в автоматизации тестирования и понимаете когда его допустимо создать, а когда необходимо выплатить (и умеете учитывать это в личных планах и планах компании).</li> <li>Вы умеете управлять негативными эффектами, возникающими при росте количества автоматических тестов (производительность и время выполнения, экспоненциальное увеличение количества тестов, количество требуемых для их выполнения ресурсов, нестабильные тесты). Вы применяете и обучаете коллег практикам, помогающим уменьшить количество кода выполняемого в конкретном тесте и уменьшению количества причин по которым он может не пройти. Вы знаете как тестировать взаимодействие между разными системами.</li> <li>Вы достаточно терпеливы и вместо &quot;революции&quot; предпочитаете эволюционный подход. При планировании изменений вы знаете, какие из них дадут наибольший эффект при прочих равных и приоритезируете работу соответствующим образом. Умеете находить баланс между требованиями к проекту и технологическими возможностями, между желанием использовать последние технологии и стабильностью проекта а также его долгосрочной поддержкой. Вы способны самостоятельно решать крупные задачи, имеете высокий уровень личной мотивации, можете самостоятельно управлять собственным временем и фокусироваться на задачах. Вы отличаетесь вниманием к деталям и эффективно решаете проблемы.</li> <li>Плюсами будут навыки работы со средствами автоматизации тестирования веб-интерфейсов (PhantomJS, Selenium и др.), а также сборки мобильных приложений (Maven/Gradle, Xcode) и автоматической выкладки бета-версий для внутреннего тестирования (Fastlane/Fabric).</li> </ul> <p><strong>Мы - стартап, поэтому у вас будет возможность получить опыт работы с разными проектами и задачами:</strong></p> <ul> <li>Поработать в роли релиз-менеджера для того чтобы лучше понять возникающие при этом задачи и ограничения, а затем предложить и реализовать инструменты автоматизации процесса</li> <li>Написать внутренний dashboard, позволяющий понять какие ветки проектов находятся на тестировании в тех или иных окружениях и в какой фазе</li> <li>Идентифицировать и оптимизировать участки кода с низкой производительностью либо неэффективным использованием базы данных</li> <li>Написать инструмент подготовки наборов данных для тестовых окружений</li> <li>Создать фреймворк или набор базовых классов для упрощения написания автотестов</li> <li>Разработать инструменты мониторинга боевого кода, непрерывного измерения производительности, сбора и отображения рантайм-ошибок</li> </ul> <p><strong>О нас:</strong></p> <p><strong>Наши технологии:</strong></p> <ul> <li>Большая часть наших проектов использует Python + Django а также Django Rest Framework. Для отслеживания задач мы используем Redmine и Rational Plan, документацию пишем в Google Docs, ReST/Markdown а также DocBook (в зависимости от проекта). Разработку ведём в системе контроля версий Mercurial. Есть сервер Jenkins, система управления конфигурацией серверов SaltStack, несколько тестовых серверных площадок и деплой с помощью Fabric. Для ряда задач используем AWS. Основной коммуникационной средой является Slack, к которому подключены различные интеграции. Для голосовых коммуникаций используем Google Hangouts, митинги, собрания и отпуска синхронизируем в Google Calendar.</li> </ul> <p><strong>Условия работы:</strong></p> <ul> <li>Удалённая. Ежедневный чек-ин в Slack по утрам (10:00 KRAT) и один общий митинг в пятницу (для коллег из Кемерово предпочтительно очное собрание).</li> <li>Сотрудники компании находятся в городах Кемерово, Москва, Новосибирск, Санкт-Петербург, Ангарск и Хуахин (Таиланд).</li> <li>Для начальной стажировки возможна командировка в Кемерово.</li> <li>Оплата труда: по результатам собеседования.</li> </ul>PythonDjango FrameworkUnit TestingJenkinsMercurialКемеровоСосновый бульвар1{"points":{"center":{"lat":55.388814019631106,"lng":86.12046193331481,"zoom":16},"marker":{"lat":55.388814,"lng":86.120462}},"manualMetro":false}freefalsenovosibirsk.hh.ru2016-09-30T07:50:39.440+03:00false2016-10-31T00:12:03.225+03:00truefalsehh.ua//hh.ua/vacancy/18544818https://kemerovo.hh.ru/vacancy/18544818
Уровень зарплаты
от 80 000 руб.
Город
Кемерово
Требуемый опыт работы
3–6 лет

Наша небольшая компания перешла на стадию, когда индивидуальных усилий разработчиков по улучшению качества отдельных продуктов и их покрытия тестами недостаточно. Требуется системный подход к обеспечению качества сервиса в целом, повышению эффективности QA отдела и систематизации подхода к тестированию, совершенствованию инфраструктуры и инструментария.

О вас:

  • Вы - опытный разработчик, умеющий работать с разными проектами и системами. Вы неоднократно выпускали в мир качественные релизы продуктов написанных на Python/Django. Linux, ssh и командная строка для вас - привычные инструменты. Вы не боитесь вносить правки в код приложений, для того чтобы помочь выпустить новую функциональность. Вы предпочитаете реализовывать инфраструктурные изменения в системе управления конфигурацией, вместо того чтобы делать это вручную. Вы любите автоматизировать операции и разрабатывать инструменты для повышения эффективности команды.
  • Вы умеете конструктивно общаться с людьми, ищете обратную связь, учитываете чужой опыт и готовы делиться своим. То что вы пишете текстом отличается тактичностью и грамотностью, обычно вызывает мало вопросов, понимается однозначно и полезно тем кто с вами работает. Если вы ушли в отпуск, то ваши коллеги могут легко найти описание созданных вами инструментов и процессов и успешно воспользоваться ими. Вы без проблем читаете английскую документацию и можете отправить Issue или PR на Github в используемый вами Open Source проект.
  • Вы можете построить полный тест-план проекта и выбрать требуемые для конкретного контекста способы тестирования (модульное, интеграционное, нагрузочное, ручное и др.). Вы способны выявить пробелы или дублирование в наборах тестов и оптимизировать процесс в целом. Умеете давать конструктивную обратную связь по чек-листам и автоматизированным тест-кейсам, обучать коллег лучшим практикам, выявлять хорошие решения и унифицировать их между проектами.
  • Вы не представляете процесс разработки без средств Continuous Integration и автоматизированной обратной связи разработчикам по обнаруженным дефектам. Умеете готовить повторяемые тестовые окружения, собирать code coverage и метрики из приложений.
  • Вы умеете создавать инструменты и инфраструктуру для нагрузочного тестирования веб-проектов, для вас не является проблемой найти причину низкой производительности в коде проекта и помочь разработчику её исправить. Совсем здорово, если вы умеете делать нагрузочное тестирование одним из этапов автоматизированного процесса контроля качества.
  • Вы понимаете, что автоматическое тестирование не бесплатно и с одной стороны защищает от ошибок при рефакторинге и развитии, с другой - удорожает и замедляет реализацию больших изменений. Вы знаете когда нужно ограничиться минимумом тестов, а когда нужно обеспечить послойное тестирование всех уровней и точек взаимодействия. Вы умеете управлять техническим долгом в автоматизации тестирования и понимаете когда его допустимо создать, а когда необходимо выплатить (и умеете учитывать это в личных планах и планах компании).
  • Вы умеете управлять негативными эффектами, возникающими при росте количества автоматических тестов (производительность и время выполнения, экспоненциальное увеличение количества тестов, количество требуемых для их выполнения ресурсов, нестабильные тесты). Вы применяете и обучаете коллег практикам, помогающим уменьшить количество кода выполняемого в конкретном тесте и уменьшению количества причин по которым он может не пройти. Вы знаете как тестировать взаимодействие между разными системами.
  • Вы достаточно терпеливы и вместо "революции" предпочитаете эволюционный подход. При планировании изменений вы знаете, какие из них дадут наибольший эффект при прочих равных и приоритезируете работу соответствующим образом. Умеете находить баланс между требованиями к проекту и технологическими возможностями, между желанием использовать последние технологии и стабильностью проекта а также его долгосрочной поддержкой. Вы способны самостоятельно решать крупные задачи, имеете высокий уровень личной мотивации, можете самостоятельно управлять собственным временем и фокусироваться на задачах. Вы отличаетесь вниманием к деталям и эффективно решаете проблемы.
  • Плюсами будут навыки работы со средствами автоматизации тестирования веб-интерфейсов (PhantomJS, Selenium и др.), а также сборки мобильных приложений (Maven/Gradle, Xcode) и автоматической выкладки бета-версий для внутреннего тестирования (Fastlane/Fabric).

Мы - стартап, поэтому у вас будет возможность получить опыт работы с разными проектами и задачами:

  • Поработать в роли релиз-менеджера для того чтобы лучше понять возникающие при этом задачи и ограничения, а затем предложить и реализовать инструменты автоматизации процесса
  • Написать внутренний dashboard, позволяющий понять какие ветки проектов находятся на тестировании в тех или иных окружениях и в какой фазе
  • Идентифицировать и оптимизировать участки кода с низкой производительностью либо неэффективным использованием базы данных
  • Написать инструмент подготовки наборов данных для тестовых окружений
  • Создать фреймворк или набор базовых классов для упрощения написания автотестов
  • Разработать инструменты мониторинга боевого кода, непрерывного измерения производительности, сбора и отображения рантайм-ошибок

О нас:

Наши технологии:

  • Большая часть наших проектов использует Python + Django а также Django Rest Framework. Для отслеживания задач мы используем Redmine и Rational Plan, документацию пишем в Google Docs, ReST/Markdown а также DocBook (в зависимости от проекта). Разработку ведём в системе контроля версий Mercurial. Есть сервер Jenkins, система управления конфигурацией серверов SaltStack, несколько тестовых серверных площадок и деплой с помощью Fabric. Для ряда задач используем AWS. Основной коммуникационной средой является Slack, к которому подключены различные интеграции. Для голосовых коммуникаций используем Google Hangouts, митинги, собрания и отпуска синхронизируем в Google Calendar.

Условия работы:

  • Удалённая. Ежедневный чек-ин в Slack по утрам (10:00 KRAT) и один общий митинг в пятницу (для коллег из Кемерово предпочтительно очное собрание).
  • Сотрудники компании находятся в городах Кемерово, Москва, Новосибирск, Санкт-Петербург, Ангарск и Хуахин (Таиланд).
  • Для начальной стажировки возможна командировка в Кемерово.
  • Оплата труда: по результатам собеседования.

Ключевые навыки

PythonDjango FrameworkUnit TestingJenkinsMercurial

Адрес

Кемерово, Сосновый бульвар, 1
­

Тип занятости

Полная занятость, удаленная работа
Дата публикации вакансии
Рекомендуем

Вакансия в архиве