Results not found

По вашему запросу ничего не найдено

Попробуйте отредактировать запрос и поискать снова

HR-советы

Руководство по поиску IT персонала по навыкам и ролям разработчиков

Article Thumbnail

Цифровая трансформация уже не «в ближайшем будущем». Это происходит прямо сейчас. Вот интересная статистика о цифровой трансформации.

Российские организации инвестируют в цифровую трансформацию от 3 до 10% от годовой выручки. Лидирующие отрасли ― ритейл (69%), банки и страхование (65%), телекоммуникации и связь (60%).

Среди ключевых ит направлений, которые российские компании уже активно используют, ― Data Analytics (34%), екоммерс (28%) и роботизация процессов (RPA) с 24%. И в результате ускорения цифровой трансформации каждая компания превратилась в технологическую компанию. Чтобы иметь правильную технологию, вам нужны профессиональные ит специалисты.

Мы составили список / руководство по поиску наиболее востребованных навыков разработчиков, разбили их по уровням (базовый, средний, продвинутый) и поделились определениями ролей и квалификации востребованных разработчиков.

Полный список навыков разработчика

1. .NET
.NET Core — это кроссплатформенная среда с открытым исходным кодом. Приложения .NET Core можно создавать с использованием нескольких языков программирования.
Базовый: Базовый уровень .NET требует понимания классов .NET, средств ввода и вывода, преобразования данных и реализации простых служб REST API.
Средний: .NET Intermediate Skill Level включает настройку доступа к данным, изучение .NET Core и Framework, общеязыковой инфраструктуры, сборок и разработку локализованных приложений.
Продвинутый: .NET Advanced Skill Level включает понимание асинхронного и параллельного программирования, изучение рекомендаций по безопасности .NET и управление памятью.

2. Angular.js
Angular — это фреймворк, который работает с Typescript или JavaScript для отображения динамического содержимого страницы.
Базовый: Базовый уровень навыков включает понимание использования компонентов, TypeScript в Angular, MVC Framework, двусторонней привязки и проверки формы.
Промежуточный: средний уровень навыков включает использование маршрутизации, NgModules, Observables для передачи данных и обработки событий, внедрения зависимостей и API-интерфейсов для передачи данных по HTTP / S.
Продвинутый: Уровень Advanced Skill включает понимание шаблонов проектирования, спецификаций требований, модульного тестирования и отладки консоли браузера.

3. Ansible

Ansible Playbooks используются для настройки приложений, серверов, больших сетей и систем. С помощью Ansible Playbooks и модулей автоматизация таких задач, как непрерывные обновления, становится простой.
Базовый: базовый уровень навыков включает настройку учебника, управление задачами, игровое поведение и выполнение простых задач автоматизации bash.
Средний: средний уровень навыков включает настройку приложений и систем с использованием REST API приложений и возможность тестирования кода Ansible.
Продвинутый: уровень Advanced Skill включает расширенную автоматизацию, включая безопасность и облако.

4. Apache Kafka
Apache Kafka делает возможным крупномасштабное перемещение данных с высокой надежностью. Эта ключевая компетенция включает в себя понимание архитектуры Apache Kafka, кластеров Kafka, систем обмена сообщениями Kafka, понимание разделов и брокеров Apache Kafka, а также производителей и потребителей Kafka.

5. Apache Spark
Apache Spark — это программная среда с открытым исходным кодом, построенная на основе платформы распределенной обработки Hadoop.
Базовый: эта область компетенции включает в себя, среди прочего, установку Spark в автономном режиме, выполнение команд в интерактивной оболочке Spark, чтение и запись данных с использованием фреймов данных, преобразование данных и запуск Spark в облаке.
Средний: Эта область компетенции включает в себя объединение и анализ данных, выполнение агрегирования данных, настройку источников и приемников данных, выполнение настройки, мониторинг заданий Spark, выполнение преобразований и выполнение SQL-запросов к потоковым данным, среди прочего.
Дополнительно: эта область компетенции включает в себя установку Spark в автономном режиме, выполнение команд в интерактивной оболочке Spark, чтение и запись данных с использованием фреймов данных, преобразование данных и запуск Spark в облаке, среди прочего.

6. AWS
Amazon Web Services (AWS) — это платформа, которая предлагает несколько сервисов облачных вычислений из центров обработки данных по всему миру.
Базовый: базовый уровень навыков включает запуск безопасных инстансов Amazon EC2 с политикой автоматического масштабирования, настройку корзины Amazon S3 для статического хостинга веб-сайтов, развертывание бессерверного приложения, обеспечение безопасности корзины Amazon S3 и многое другое.
Промежуточный: AWS Intermediate Skill Level включает создание облачных уведомлений с использованием SNS, развертывание приложения с использованием Elastic Beanstalk, понимание распределения CloudFront для контента, хранящегося в Amazon S3, создание предупреждений мониторинга CloudWatch, изучение DynamoDB, среди прочего.
Продвинутый: AWS Advanced Skill Level включает анализ данных в S3 с помощью Athena, использование AWS CLI для управления ресурсами, миграции данных, автоматизации развертывания кода и т. Д.

7. Bash
Bash или Bourne-Again SHell — это интерпретатор команд и язык сценариев, широко используемый по умолчанию в операционных системах на базе Linux.
Базовый: основные компетенции включают теоретические основы Bash, общие команды, переменные и операторы, условные операторы и операторы цикла, операции ввода-вывода и умение создавать базовые сценарии Bash.
Средний: основные компетенции включают расширенные команды, использование регулярных выражений, понимание и использование конвейеров, обработку файлов, ловушку и сигналы в bash, функции и использование аргументов командной строки.
Продвинутый: основные компетенции включают обработку ошибок, асинхронные команды, умение создавать инструменты командной строки и использование / dev / null.

8. C #
C # — это объектно-ориентированный язык программирования общего назначения, разработанный для Common Language Infrastructure (CLI) и широко известный своими возможностями структурирования, строгой типизации и лексической области видимости.
Базовый: Базовый уровень навыков включает понимание структуры программ C #, типов и переменных, базового ООП, свойств и индексаторов, коллекций, обработки исключений и прочего.
Промежуточный: средний уровень навыков включает понимание общей системы, использование анонимных методов, замыканий и лямбда-синтаксиса, языковой интегрированный запрос (LINQ), управление ресурсами и использование динамических типов, среди прочего.
Продвинутый: Уровень продвинутых навыков включает понимание асинхронного программирования, отражения, небезопасного кода и деревьев выражений.

9. Качество кода
Когда несколько разработчиков работают над одной и той же кодовой базой, важно следовать лучшим практикам, чтобы не допустить фиксации непреднамеренных шаблонов и синтаксических ошибок. Область компетенции включает понимание преимуществ написания модульного, многоразового, поддерживаемого и безопасного кода.

10. CSS
Каскадные таблицы стилей (CSS) в основном используются для включения стилей текста, таблиц и форматирования макета веб-страниц. Сферы компетенции включают изучение каскадирования и наследования, изучение основ стилей текста, понимание использования макетов в CSS, понимание упаковки элементов в CSS и многое другое.

11. Моделирование данных
Моделирование данных включает в себя различные методы моделирования данных для хранения в базах данных. Уровень базовых навыков включает в себя оценку вероятностей с использованием байесовского моделирования, понимание линейной регрессии, логистической регрессии и прогнозирование меток, чтобы назвать несколько.

12. Визуализация данных
Визуализация данных — ключевой аспект анализа данных, позволяющий исследовать и понимать данные. Базовый уровень навыков включает в себя создание визуализаций данных, отображение базовой частоты данных, отображение тенденций данных и использование тепловых карт, среди прочего.

13. Data Wrangling
Data Wrangling включает в себя сбор, выбор и преобразование данных, чтобы сделать их подходящими для аналитики и машинного обучения. Он также включает в себя очистку данных, вменение, обобщение, агрегирование, нормализацию. Базовый уровень квалификации включает в себя обнаружение выбросов / аномалий, очистку данных, преобразование категориальных данных в числовые, группировку данных на основе значений и объединение данных, среди прочего.

14. Django
Django — это фреймворк для веб-приложений с открытым исходным кодом, основанный на Python, со множеством встроенных функций, которые можно использовать для простой и быстрой разработки приложений.
Базовый: базовый уровень навыков включает понимание ключевых понятий, таких как модели, представления, шаблоны и конфигурация URL-адресов, среди прочего.
Средний: средний уровень навыков включает в себя возможность реализовать электронную почту для связи и вести журнал, который может использоваться для отладки приложения по мере необходимости.
Продвинутый: область уровня Advanced Skill включает выполнение сложных операций, связанных с базой данных, с использованием моделей Django в сочетании с представлениями на основе классов и использованием соответствующего сопоставления URL-адресов по мере необходимости. Понимание шаблонов, аутентификации и возможности реализации Rest API, настройки Django Admin, среди прочего.

15. Docker
Docker — это платформа, которая упрощает создание, обновление, развертывание и запуск контейнерных приложений.
Базовый: базовый уровень навыков включает создание образов Docker и файлов Docker, создание, развертывание и запуск простых приложений, а также работу с .NET — контейнерами.
Средний: средний уровень навыков включает в себя создание образов, понимание основных команд DevOps для докеров, тегов и меток, а также запуск нескольких служб в контейнере, среди прочего.
Продвинутый: уровень Advanced Skill включает в себя выполнение команд внутри контейнера, обучение извлечению показателей, адаптацию более строгих методов безопасности и работу с томами, среди прочего.

16. GCP
Google Cloud Platform (GCP), предлагаемая Google, представляет собой набор модульных сервисов облачных вычислений, включая вычисления, хранение данных, аналитику данных и машинное обучение, а также набор инструментов управления.
Базовый: эта область компетенции включает в себя развертывание экземпляров Google App Engine, развертывание и управление облачными функциями Google, создание и управление корзинами хранилища Google, среди прочего.
Средний: эта область компетенции включает в себя развертывание приложений Compute Engine, расширенные развертывания App Engine, Google Kubernetes Engine, использование более продвинутых решений для баз данных, использование, среди прочего, решений в стиле оболочки для управления облачными сервисами.
Продвинутый: эта область компетенции включает в себя всестороннее облачное управление идентификацией и доступом, расширенные решения для обработки данных, более продвинутые варианты развертывания, такие услуги, как Pub / Sub, Cloud CDN, балансировку нагрузки облака и другие.

17. Golang
Golang — популярный язык, изобретенный Google в 2007 году. Он статически типизирован и является компилируемым языком программирования. Это общий язык, который используется с технологиями облачных вычислений, инструментами оркестровки контейнеров, такими как Docker и Kubernetes, простыми в создании инструментами CLI, веб-сервисами и популярными инструментами для создания DevOps и инструментов проектирования надежности сайтов.
Базовый: основные компетенции включают изучение базовых языковых функций Golang, простых структур данных, массивов, карт, типов данных и интерфейсов.
Средний уровень: основные компетенции включают работу с функциями, понимание именованных возвращаемых параметров, указателей, обработку файлов и обработку ошибок.
Продвинутый: основные компетенции включают изучение горутин, мьютексов и каналов, взаимодействие с хранилищем, работу с фиктивными объектами и тестирование конечных точек HTTP, среди прочего.

18. Hadoop
Программная среда с открытым исходным кодом Hadoop широко используется для надежных и масштабируемых распределенных вычислений на кластере машин.
Базовый: эта область компетенции включает понимание кластера с одним узлом в автономном режиме, в псевдораспределенном режиме, выполнение команд оболочки для взаимодействия с HDFS, выполнение задач параллельной обработки, среди прочего.
Промежуточный уровень: эта область компетенции включает, среди прочего, реализацию расширенного параллелизма, реализацию счетчиков, выполнение базовых запросов и подзапросов в Hive.
Продвинутый: эта область компетенции включает выполнение операций ETL с использованием Apache Pig, базы данных Apache Cassandra NoSQL, оптимизацию выполнения задач в Hadoop с использованием Tez, среди прочего.

19. HTML / CSS / JS
HTML, CSS и JavaScript являются ключевыми для создания веб-приложений. При создании веб-приложений HTML обеспечивает базовую структуру веб-сайтов, которая улучшается и модифицируется другими технологиями, такими как CSS и JavaScript. CSS используется для управления представлением, форматированием, стилем и макетом. JavaScript используется для управления поведением различных элементов в приложении.

20. Java
Язык программирования высокого уровня, используемый для создания полных приложений, которые могут работать на одном компьютере или распределяться между серверами и клиентами в сети.
Базовый: Базовый уровень навыков включает в себя использование общих языковых функций в Java, иерархий классов, шаблонов проектирования и др.
Средний: средний уровень квалификации включает многопоточность в Java, работу с сетью на Java, а также сбор и сериализацию.

21. JavaScript
Javascript используется в первую очередь для программирования веб-браузера, а также на стороне сервера с Node. Основные области применения включают добавление интерактивного поведения к веб-страницам, создание веб-приложений и мобильных приложений, создание веб-серверов и разработку серверных приложений, разработку игр и т. д.
Базовый: к ключевым компетенциям относятся, среди прочего, функции, события и обработка ошибок, каррирование, подъем, объем, наследование.
Средний уровень: эта ключевая компетенция включает в себя, среди прочего, шаблоны проектирования, управление памятью, модель параллелизма и циклы событий.

22. Jenkins
Jenkins — это бесплатная серверная система автоматизации сборки и тестирования с открытым исходным кодом, написанная на Java. Эта ключевая область компетенции включает настройку сборок проектов, планирование сборок, настройку уведомлений по электронной почте и создание сценариев для правильного резервного копирования и восстановления сервера Jenkins.

23. Kubernetes
Kubernetes (K8s) — это система с открытым исходным кодом для контейнерных приложений. Он позволяет автоматизировать развертывание, масштабирование и управление контейнерами в любом масштабе.
Базовый: эта область компетенции включает установку и настройку Kubernetes, развертывания и кластеры, работу со службами Kubernetes для доступа к развертываниям, создания конфигураций и секретных данных, среди прочего.
Средний: эта область компетенции включает в себя работу с приложениями с отслеживанием состояния, доступ к панели управления Kubernetes, работу с метками, среди прочего.
Дополнительно: эта область компетенции включает в себя работу и доступ к журналам Kubernetes и приложений в кластере, отладку, сетевую политику, настройку производительности и многое другое.

24. Знание языка
Понимание всех правил, функций и механизмов языка программирования, а также оптимизация простоты, точности и модульности в рамках правил языка программирования являются ключом к реализации решений. Эта область компетенции включает определение того, что делает разработчика хорошим знанием того или иного языка программирования.

25. Linux
Linux относится к семейству операционных систем, основанных на ядре Linux с открытым исходным кодом [впервые выпущенном в 1991 году] с интерфейсом, в основном похожим на Unix. Это семейство операционных систем распространяется и специализируется на различных целях, таких как настольные компьютеры, смартфоны, мэйнфреймы, периферийные вычислительные устройства и т. д. Linux был построен исключительно как проект с открытым исходным кодом и сегодня является наиболее широко используемым семейством операционных систем в мире.
Базовый: компетенции включают теоретические основы, основы работы с bash, использование диспетчера пакетов, текстовых редакторов для редактирования файлов и понимание процесса загрузки Linux.
Средний уровень: основные компетенции включают использование и понимание безопасной оболочки (ssh), мониторинг и управление процессами и памятью, файловые системы, а также понимание процесса инициализации и планирования заданий.
Продвинутый: основные компетенции включают понимание диспетчеров рабочего стола и окон, теоретических основ и использования сетевого уровня в Linux, межпроцессного взаимодействия и управления пользователями для администрирования системы Linux.


Определение ролей и квалификация востребованного разработчика
1. Инженер-программист
Кто такой инженер-программист?
Инженер — программиста нанимают для сборки индивидуальных систем и решения для конкретного заказчика. Они обладают обширными знаниями языков программирования, разработки программного обеспечения и компьютерных операционных систем. Они применяют инженерные принципы к проектированию, разработке, обслуживанию, тестированию и оценке компьютерного программного обеспечения.

Каковы основные навыки инженера-программиста?

  • Качество кода
  • Владение языком
  • Решение проблем
  • REST API
  • SQL
  • Техническая коммуникация

Какие общие вопросы собеседования с программистом ?

  • Опишите плохой код, который вы читали или унаследовали недавно.
  • Когда вы узнаете, что ваш код готов к производству?

2. Front-end разработчик
Кто такй фронтенд разработчик?
Они разрабатывают графические интерфейсы, где пользователи могут просматривать и взаимодействовать с данными. Некоторые распространенные веб-технологии, используемые интерфейсными разработчиками, включают HTML , CSS , DOM и JavaScript, которые работают на открытой веб-платформе или действуют как входные данные компиляции для сред, не относящихся к веб-платформе.

Каковы основные навыки фронтенд разработчика?

  • Качество кода
  • CSS
  • HTML / CSS / JS
  • JavaScript
  • Решение проблем
  • Техническая коммуникация

Какие вопросы можно задать на собеседовании с фронтенд разработчиком ?

  • Какие фреймворки вы использовали и каковы преимущества и недостатки каждого из них?
  • Каким образом сервер может взаимодействовать с клиентом?

3. Back-end разработчик
Кто такой back-end разработчик?
Он отвечает за логику приложения на стороне веб-сервера и хранения данных. В то время как интерфейсные разработчики сосредотачиваются на пользовательском интерфейсе, бекенд разработчики пишут веб-службы и API, используемые разработчиками интерфейсных и мобильных приложений.

Каковы основные навыки back-end разработчика?

  • Качество кода
  • Решение проблем
  • REST API
  • SQL
  • Системный дизайн
  • Техническая коммуникация

Какие вопросы можно задать на собеседовании с серверным разработчиком ?

  • Какой ваш любимый язык программирования и почему?
  • В чем разница между приемочным тестированием и функциональным тестированием?
  • В чем разница между базами данных SQL и MongoDB на высоком уровне?
  • Каковы передовые практики тестирования производительности?

4. Full-stack инженер
Кто такой full-stack инженер?
Инженер полного стека работает как с фронтом, так и с беком веб — сайта или приложения. Они могут заниматься проектами, которые включают базы данных, создавать веб-сайты, ориентированные на пользователя, и работать с клиентами на этапах планирования этого процесса.

Каковы основные навыки инженера полного цикла?

  • Качество кода
  • CSS
  • JavaScript
  • Node.js
  • Решение проблем
  • REST API
  • Техническая коммуникация

Каковы некоторые общие вопросы собеседования с инженерами?

  • Когда вам представили новый проект, как вы выбрали задействованные инструменты и технологии?
  • Что бы вы назвали лучшим опытом внедрения?
  • Допустим, вам нужно написать конечную точку для проверки существования ресурса. Какой путь и метод вы бы использовали?
  • Какие 5+ способов оптимизировать веб-сайт, чтобы сделать его максимально эффективным и масштабируемым?
  • Как бы вы помешали ботам очистить ваш общедоступный API?

5. Data Science
Кто такой Специалист по данным?
Специалисты по обработке данных собирают и анализируют большие наборы структурированных и неструктурированных данных. С помощью информатики, статистики и математики они анализируют, обрабатывают и упаковывают полезные данные для принятия ключевых решений в организациях.

Каковы некоторые фундаментальные навыки специалиста по данным?

  • Apache Spark
  • Качество кода
  • Моделирование данных
  • Визуализация данных
  • Преодоление данных
  • Машинное обучение
  • Python
  • R
  • SQL
  • Системный дизайн
  • Техническая коммуникация

Какие общие вопросы собеседования к специалистами по данным?

  • В чем разница между обучением с учителем и обучением без учителя?
  • Что такое машинное обучение?
  • Что такое смещение выборки?
  • Как поддерживать развернутую модель?
  • Как избежать переобучения вашей модели?
  • Как вы выполняете логистическую регрессию?
  • Допустим, вам предоставлен набор данных, состоящий из переменных с отсутствующими значениями более 30%. Как бы вы с ними справились?

6. Cloud Engineer
Кто такой облачный инженер?
Он коммерциализирует, стандартизирует и управляет облачными вычислениями. Они используют методы и инструменты инженерии для создания, разработки, эксплуатации и обслуживания систем и решений облачных вычислений. Облачные инженеры несут ответственность за использование облачных ресурсов для решения бизнес-задач.

Каковы основные навыки Cloud Engineer?

  • Ansible
  • AWS
  • Качество кода
  • Докер
  • Kubernetes
  • Системный дизайн
  • Техническая коммуникация
  • Terraform

Какие общие вопросы собеседования с Cloud Engineer?

  • Каковы преимущества облачных вычислений?
  • Каковы модели облачных сервисов?
  • В чем разница между облачными и локальными вычислениями?

Цифровая трансформация связана с талантами, а не с технологиями. Они обращают внимание на важность переподготовки и повышения квалификации персонала, чтобы они лучше приспособились к изменениям.


Источник : itanddigital.ru