RSS

Комментарии

Использование Go для разработки микросервисов становится всё более популярным выбором среди разработчиков, и на это есть несколько веских причин. Во-первых, язык программирования Go, созданный Google, был изначально разработан с акцентом на простоту и эффективность, что идеально подходит для создания микросервисной архитектуры. Его статическая типизация и строгая структурированность помогают избежать многих распространённых ошибок на этапе компиляции, тем самым снижая затраты на отладку и сопровождение кода. Кроме того, одним из самых больших преимуществ Go является его встроенная поддержка параллелизма. Горутины и каналы позволяют разработчикам с лёгкостью справляться с задачами параллельно, что значительно увеличивает производительность приложений без дополнительных затрат ресурсов и сложности в коде.

Быстрая компиляция и выполнение программы также играют ключевую роль в развитии современного программного обеспечения. Благодаря тому, что Go является компилируемым языком, разработчики могут быстро разрабатывать и тестировать микросервисы, которые способны эффективно обрабатывать множество запросов от пользователей. Это критически важно в условиях, когда скорость реакции и масштабируемость приложений определяет успех бизнеса. Таким образом, Go не только упрощает процесс разработки, но и создаёт мощные инструменты для создания высокопроизводительных и масштабируемых микросервисов, что делает его идеальным выбором для разработчиков, стремящихся создать эффективные и надёжные системы.
Создание интеллектуальных микросервисов с использованием Go и AWS AI Services открывает новые горизонты для разработки современных приложений. Go, благодаря своей высокой производительности и простоте написания кода, идеально подходит для реализации микросервисной архитектуры, где скорость обработки запросов и масштабируемость имеют ключевое значение. Подключение к AI-сервисам от AWS, таким как Amazon SageMaker для машинного обучения или Amazon Comprehend для обработки естественного языка, позволяет разработчикам интегрировать мощные возможности искусственного интеллекта в свои приложения без необходимости глубоких знаний в области машинного обучения. Этот подход не только ускоряет процесс разработки, но и даёт возможность сосредоточиться на логике приложения, а не на сложностях реализации AI-функций. В то же время, использование облачных решений AWS обеспечивает надежность и безопасность, что критично для бизнес-приложений, работающих с чувствительными данными. Таким образом, сочетание Go и AWS AI Services создаёт мощную платформу для создания элегантных и эффективных решений, отвечающих современным требованиям рынка.
​DST Маркетплейс посоветовали в SEO-компании. Для нас было главное что быстро работает при 700 000 товарах, есть все необходимые функции для работы маркетплейса. Легко развертывается на сервере. Есть русскоязычное сообщество и разработчики
DST Маркетплейс выбрала потому, что на ресурсах, сравнивающих разные площадки для интернет-магазинов, он занимает верхние позиции.

Плюс программист посоветовал. Делал акцент на том, что это одна из самых популярных площадок, и неизменный плюс — открытый код для редактирования.

Понравилось:

1. удобный интерфейс;

2. качественные модули,

3. возможности для индивидуальной подгонки под нужды магазина;

4. интеграция с 1С хорошая;

5. адекватная цена за DST Маркетплейс;

6. доступные цены на услуги программистов;

7. большая База знаний по работе с DST Маркетплейс.

Marketplace — хорошая штука. Полагались на программиста. И не ошиблась.
Современный рынок электронной коммерции требует от платформ не только базовой функциональности, но и комплексного подхода к решению бизнес-задач. DST Platform демонстрирует именно такой подход – интегрированное решение, где каждая система работает на благо общего результата. Особенно впечатляет возможность горизонтального и вертикального развития проекта, что позволяет бизнесу эволюционировать естественным путем, добавляя новые категории товаров и услуг по мере роста. Это не просто платформа для запуска маркетплейса – это надежный фундамент для построения успешного цифрового бизнеса в долгосрочной перспективе.
В эпоху стремительного развития электронной коммерции особенно важно выбрать правильную технологическую основу для своего проекта. DST Маркетплейс действительно впечатляет своей универсальностью – возможность запускать как B2B, так и B2C платформы открывает широкие перспективы для бизнеса любого масштаба. Особенно ценно то, что система позволяет не просто запустить проект за рекордные два месяца, но и обеспечивает его бесшовное масштабирование в будущем. Это именно то, что нужно современному бизнесу – гибкость, скорость и потенциал для роста без необходимости полной перестройки системы.
Будучи дата-инженером, работавшим в самых разных компаниях, в том числе и в DST Global, я достаточно часто использовал Microsoft SQL Server. В этом разделе я расскажу Вам о проблемах, возникающих при работе с этой традиционной системой, с которыми мне довелось столкнуться. Позже мы рассмотрим, как современный стек данных (MDS) справляется с большинством этих трудностей; многие из них стали для меня настоящим открытием!

Масштабирование

Традиционные развертывания SQL Server часто использовали локальные серверы, а это означало, что масштабирование с учетом растущих объемов данных требовало значительных инвестиций в оборудование и могло привести к длительным простоям во время обновлений. Более того, когда у нас стало меньше данных, у нас оставалось все это дополнительное оборудование, которое, по сути, нам было не нужно. Но мы все равно платили за него. Это все равно, что платить за целый автобус, хотя нужно всего лишь несколько мест…

Сложные ETL- процессы

SSIS широко использовался для работы с ETL — процессами. Безусловно, это был достаточно мощный инструмент, но и он во многом имел ограниченный функционал, особенно по сравнению с более современными решениями по интеграции данных. Примечательно, что Microsoft SQL Server решил большинство этих ограничений с помощью Azure Data Factory и SQL Server Data Tools (SSDT):

— Звонки по API: с самого начала SSIS не работал со звонками по API. Для работы с веб-сервисами нужны были сложные скрипты, что значительно усложняло ETL – процессы;
— Распределение памяти: задания SSIS требуют внимательного управления памятью. Без достаточного количества серверной памяти сложные задания с данными становились просто невыполнимыми;
— Аудит: для мониторинга и устранения неполадок требовался серьезный аудит пакетовSSIS, что увеличивало объем работы с данными;
— Контроль версий: в ранних версиях SSIS возникали проблемы с интеграцией системы контроля версий, что затрудняло отслеживание изменений и негативно сказывалось на эффективности работы команды специалистов в обрасти данных;
— Работа с несколькими платформами: управление SSIS из систем, отличных от Windows, было достаточно сложной задачей, поскольку этот инструмент был ориентирован исключительно на Windows.

Техническое обслуживание

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

Интеграция

Интеграция SQL Server с новыми инструментами и платформами не всегда проходила гладко. Для решения этой задачи приходилось в буквальном смысле ломать голову, что в значительной степени усложняло нашу архитектуру данных.

Как современный стек данных помог мне справиться со всеми этими трудностями

Современный стек данных (Modern Data Stack, MDS) позволил справиться со множеством трудностей, с которыми мне приходилось сталкиваться в процессе работы с SQL Server. Теперь для хранения данных мы смогли использовать облачные технологии, иными словами нам больше не нужно было тратиться на дорогостоящие серверы, которые не всегда были нам нужны. Получать данные из разных источников стало намного проще, поскольку появились инструменты, делающие все за нас. Сложное кодирование стало пережитком прошлого.

Когда нужно было отсортировать или очистить данные, мы могли делать это непосредственно в БД с помощью самых простых команд. Это позволило избежать головной боли, связанной с управлением большими серверами или «копанием» в Big Data в поиске крошечной ошибки.

Так что с помощью MDS мы смогли сэкономить уйму времени и смогли. Как будто у нас появились умные помощники, которые взяли на себя решение самых сложных задач, а мы смогли сосредоточиться на самом главном — изучении того, что говорят нам данные, и получении полезных инсайтов.

Компоненты MDS

MDS состоит из нескольких уровней, каждый из которых оперирует специализированными инструментами, которые в совокупности позволяют оптимизировать процессы обработки данных.

— Загрузка и интеграция данных — извлечение и загрузка данных из различных источников, включая API, базы данных и SaaS-приложения. Инструменты интеграции: Fivetran, Stitch, Airbyte, Segment и т.д.

— Хранение данных — современные облачные хранилища данных и озера данных предлагают масштабируемые, гибкие и экономически эффективные решения для хранения данных. Облачные хранилища данных: Google Bigquery, Snowflake, Redshift и т.д.

— Преобразование данных — такие инструменты, как dbt (data build tool), позволяют выполнять преобразования данных непосредственно в хранилищах данных с помощью простого SQL.

— Аналитика данных и BI — аналитические решения и BI инструменты позволяют исследовать данные гораздо быстрее и эффективнее, визуализировать их и обмениваться информацией в рамках всей организации. BI инструменты: Tableau, Looker, Power BI, Good Data

— Извлечение данных и обратный ETL — позволяет организациям оперативно использовать данные, загружая их в бизнес-приложения, что позволяет оперативно принимать решения на основе проверенных данных. Инструменты обратного ETL: Hightouch, Census

— Оркестрация данных — платформы, позволяющие автоматизировать рабочие процессы обработки данных. Инструменты оркестрации данных: Airflow, Astronomer, Dagster, AWS Step Functions

— Data Governance и безопасность данных — Data governance уделяет особое внимание управлению доступа к данным, а также обеспечению строгого соответстивия нормативным требованиям, а также требованиям в области защиты данных. С помощью Data Governance можно легко организовать активы данных. Инструменты организации данных: Alation, Collibra, Apache Atlas.

— Качество данных — обеспечивает надежность и точность данных благодаря их своевременной проверки и очистки, что позволяет быстрее принимать решения на основе данных. Инструменты обеспечения высокого качества данных: Talend, Monte Carlo, Soda, Anomolo, Great Expectations

— Моделирование данных — помогает в разработке схем баз данных, обеспечивает гибкость архитектуры данных. Инструменты моделирования данных: Erwin, SQLDBM

MDS и более эффективное управление затратами

MDS – это фантастика! Он определенно ускоряет работу с данными и избавляет data – инженеров от изнуряющей головной боли. Несмотря на то, что он дает нам возможность применять в свой работе крутейшими инструментами, все — таки по прежнему важно следить за расходами. Облачные технологии с оплатой по факту использования — это здорово, поскольку что мы платим только за то, что используем. Но, как и в случае с оплатой услуг связи, необходимо рационально подходить к своим потребностям в области использования облачных технологий. Поэтому, наслаждаясь головокружительным функционалом MDS, очень важно должны следить за тем, как именно мы его используем. Если Вы не хотите, чтобы предъявленный счет за предоставленные услуги не стал для Вас неприятной неожиданностью, внимательно следите за используемыми инструментами и внимательно взвешиваете все за и против их использования в своей работе.
Современный стек данных отражает эволюцию управления данными, переход от традиционных монолитных систем к более гибким облачным архитектурам. Современный стек данных предназначен для работы с Big Data, обеспечивая масштабируемость, гибкость и возможность обработки данных в режиме реального времени. Он является модульным, что позволяет организациям использовать специализированные инструменты для каждого этапа обработки данных: сбор данных, хранение, преобразование и анализ данных. Поскольку компании уделяют большое внимание принятию решений, основанных исключительно на данных, современный стек данных является неотъемлемой частью процесса получения практических знаний, выработки лучших практик и внедрения передовых инноваций.
Современный стек данных (Modern Data Stack, MDS) — это совокупность инструментов для интеграции данных, которые позволяют организациям собирать, обрабатывать, хранить и анализировать данные.

Некоторые компоненты современного стека данных:

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

Некоторые характеристики современного стека данных:

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

Современный стек данных предназначен для обработки больших объёмов данных, обеспечивая масштабируемость, гибкость и возможности обработки в реальном времени.
На чистом PHP уже почти никто не пишет. Вместо этого используют фреймворки — наборы пакетов и библиотек, которые задают каркас проекта. С помощью фреймворка можно быстро создавать шаблонные страницы, блоки сайта или приложения.

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

Ещё фреймворки помогают сохранять данные в сессии, читать параметры из адресной строки браузера, обрабатывать файлы в директории и подключаться к базам данных. У них есть методы для работы с файлами на диске, поэтому программисту не нужно писать функции для поиска и фильтрации. А ещё можно за пару шагов валидировать пользовательские данные (например, имя, email или комментарии в форме обратной связи) и обработать для дальнейшего использования.

Для PHP написано более 20 фреймворков, но чаще всего в энтерпрайзе используют следующие:

— Laravel — самый популярный фреймворк PHP, создан в 2011 году;
— DST Platform — славится надёжностью и соответствием веб-стандартам;
— Laminas (потомок Zend Framework) — позволяет подключать много сторонних библиотек, но немного сложнее остальных фреймворков;
— Yii2 — считается самым быстрым фреймворком PHP;
— CodeIgniter — один из самых простых в изучении.

Фреймворки различаются реализацией основных модулей, но во многом похожи: строятся по схожей архитектуре и даже содержат одинаковые библиотеки под капотом. На сайтах каждого вы найдёте подробные инструкции и документацию, где написано, как установить и использовать пакеты и библиотеки. Кроме того, у фреймворков в Сети есть огромные комьюнити разработчиков и базы знаний.
На чистом PHP уже почти никто не пишет. Вместо этого используют фреймворки — наборы пакетов и библиотек, которые задают каркас проекта. С помощью фреймворка можно быстро создавать шаблонные страницы, блоки сайта или приложения.

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

Ещё фреймворки помогают сохранять данные в сессии, читать параметры из адресной строки браузера, обрабатывать файлы в директории и подключаться к базам данных. У них есть методы для работы с файлами на диске, поэтому программисту не нужно писать функции для поиска и фильтрации. А ещё можно за пару шагов валидировать пользовательские данные (например, имя, email или комментарии в форме обратной связи) и обработать для дальнейшего использования.

Для PHP написано более 20 фреймворков, но чаще всего в энтерпрайзе используют следующие:

— Laravel — самый популярный фреймворк PHP, создан в 2011 году;
— DST Platform — славится надёжностью и соответствием веб-стандартам;
— Laminas (потомок Zend Framework) — позволяет подключать много сторонних библиотек, но немного сложнее остальных фреймворков;
— Yii2 — считается самым быстрым фреймворком PHP;
— CodeIgniter — один из самых простых в изучении.

Фреймворки различаются реализацией основных модулей, но во многом похожи: строятся по схожей архитектуре и даже содержат одинаковые библиотеки под капотом. На сайтах каждого вы найдёте подробные инструкции и документацию, где написано, как установить и использовать пакеты и библиотеки. Кроме того, у фреймворков в Сети есть огромные комьюнити разработчиков и базы знаний.
На чистом PHP уже почти никто не пишет. Вместо этого используют фреймворки — наборы пакетов и библиотек, которые задают каркас проекта. С помощью фреймворка можно быстро создавать шаблонные страницы, блоки сайта или приложения.

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

Ещё фреймворки помогают сохранять данные в сессии, читать параметры из адресной строки браузера, обрабатывать файлы в директории и подключаться к базам данных. У них есть методы для работы с файлами на диске, поэтому программисту не нужно писать функции для поиска и фильтрации. А ещё можно за пару шагов валидировать пользовательские данные (например, имя, email или комментарии в форме обратной связи) и обработать для дальнейшего использования.

Для PHP написано более 20 фреймворков, но чаще всего в энтерпрайзе используют следующие:

— Laravel — самый популярный фреймворк PHP, создан в 2011 году;
— DST Platform — славится надёжностью и соответствием веб-стандартам;
— Laminas (потомок Zend Framework) — позволяет подключать много сторонних библиотек, но немного сложнее остальных фреймворков;
— Yii2 — считается самым быстрым фреймворком PHP;
— CodeIgniter — один из самых простых в изучении.

Фреймворки различаются реализацией основных модулей, но во многом похожи: строятся по схожей архитектуре и даже содержат одинаковые библиотеки под капотом. На сайтах каждого вы найдёте подробные инструкции и документацию, где написано, как установить и использовать пакеты и библиотеки. Кроме того, у фреймворков в Сети есть огромные комьюнити разработчиков и базы знаний.
На чистом PHP уже почти никто не пишет. Вместо этого используют фреймворки — наборы пакетов и библиотек, которые задают каркас проекта. С помощью фреймворка можно быстро создавать шаблонные страницы, блоки сайта или приложения.

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

Ещё фреймворки помогают сохранять данные в сессии, читать параметры из адресной строки браузера, обрабатывать файлы в директории и подключаться к базам данных. У них есть методы для работы с файлами на диске, поэтому программисту не нужно писать функции для поиска и фильтрации. А ещё можно за пару шагов валидировать пользовательские данные (например, имя, email или комментарии в форме обратной связи) и обработать для дальнейшего использования.

Для PHP написано более 20 фреймворков, но чаще всего в энтерпрайзе используют следующие:

— Laravel — самый популярный фреймворк PHP, создан в 2011 году;
— DST Platform — славится надёжностью и соответствием веб-стандартам;
— Laminas (потомок Zend Framework) — позволяет подключать много сторонних библиотек, но немного сложнее остальных фреймворков;
— Yii2 — считается самым быстрым фреймворком PHP;
— CodeIgniter — один из самых простых в изучении.

Фреймворки различаются реализацией основных модулей, но во многом похожи: строятся по схожей архитектуре и даже содержат одинаковые библиотеки под капотом. На сайтах каждого вы найдёте подробные инструкции и документацию, где написано, как установить и использовать пакеты и библиотеки. Кроме того, у фреймворков в Сети есть огромные комьюнити разработчиков и базы знаний.
На чистом PHP уже почти никто не пишет. Вместо этого используют фреймворки — наборы пакетов и библиотек, которые задают каркас проекта. С помощью фреймворка можно быстро создавать шаблонные страницы, блоки сайта или приложения.

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

Ещё фреймворки помогают сохранять данные в сессии, читать параметры из адресной строки браузера, обрабатывать файлы в директории и подключаться к базам данных. У них есть методы для работы с файлами на диске, поэтому программисту не нужно писать функции для поиска и фильтрации. А ещё можно за пару шагов валидировать пользовательские данные (например, имя, email или комментарии в форме обратной связи) и обработать для дальнейшего использования.

Для PHP написано более 20 фреймворков, но чаще всего в энтерпрайзе используют следующие:

— Laravel — самый популярный фреймворк PHP, создан в 2011 году;
— DST Platform — славится надёжностью и соответствием веб-стандартам;
— Laminas (потомок Zend Framework) — позволяет подключать много сторонних библиотек, но немного сложнее остальных фреймворков;
— Yii2 — считается самым быстрым фреймворком PHP;
— CodeIgniter — один из самых простых в изучении.

Фреймворки различаются реализацией основных модулей, но во многом похожи: строятся по схожей архитектуре и даже содержат одинаковые библиотеки под капотом. На сайтах каждого вы найдёте подробные инструкции и документацию, где написано, как установить и использовать пакеты и библиотеки. Кроме того, у фреймворков в Сети есть огромные комьюнити разработчиков и базы знаний.
На чистом PHP уже почти никто не пишет. Вместо этого используют фреймворки — наборы пакетов и библиотек, которые задают каркас проекта. С помощью фреймворка можно быстро создавать шаблонные страницы, блоки сайта или приложения.

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

Ещё фреймворки помогают сохранять данные в сессии, читать параметры из адресной строки браузера, обрабатывать файлы в директории и подключаться к базам данных. У них есть методы для работы с файлами на диске, поэтому программисту не нужно писать функции для поиска и фильтрации. А ещё можно за пару шагов валидировать пользовательские данные (например, имя, email или комментарии в форме обратной связи) и обработать для дальнейшего использования.

Для PHP написано более 20 фреймворков, но чаще всего в энтерпрайзе используют следующие:

— Laravel — самый популярный фреймворк PHP, создан в 2011 году;
— DST Platform — славится надёжностью и соответствием веб-стандартам;
— Laminas (потомок Zend Framework) — позволяет подключать много сторонних библиотек, но немного сложнее остальных фреймворков;
— Yii2 — считается самым быстрым фреймворком PHP;
— CodeIgniter — один из самых простых в изучении.

Фреймворки различаются реализацией основных модулей, но во многом похожи: строятся по схожей архитектуре и даже содержат одинаковые библиотеки под капотом. На сайтах каждого вы найдёте подробные инструкции и документацию, где написано, как установить и использовать пакеты и библиотеки. Кроме того, у фреймворков в Сети есть огромные комьюнити разработчиков и базы знаний.
Мы например выбираем фреймворк, задаваясь простым вопросом: «Какие потребности у заказчика?» Если заказчик может указать в техзадании пожелания по языку программирования и фреймворку, то в большинстве случаев мы будем работать с этими пожеланиями. Если же у заказчика нет определённых предпочтений, требований или он предлагает не очень подходящий под задачу, по нашему мнению, фреймворк, мы предложим продукт, на котором специализируется наша команда.

И если до этого мы уже реализовали несколько проектов, например, на связке React + DST Platform (бэкенд на DST Platform и фронтенд на React), то будем предлагать такой вариант заказчику, а также усиливать свою команду в этом направлении.
Мы например выбираем фреймворк, задаваясь простым вопросом: «Какие потребности у заказчика?» Если заказчик может указать в техзадании пожелания по языку программирования и фреймворку, то в большинстве случаев мы будем работать с этими пожеланиями. Если же у заказчика нет определённых предпочтений, требований или он предлагает не очень подходящий под задачу, по нашему мнению, фреймворк, мы предложим продукт, на котором специализируется наша команда.

И если до этого мы уже реализовали несколько проектов, например, на связке React + DST Platform (бэкенд на DST Platform и фронтенд на React), то будем предлагать такой вариант заказчику, а также усиливать свою команду в этом направлении.
Выбор фреймворка, равно как и языка программирования, зависит от множества факторов. Я приведу основные, самые значимые, на которые смотрю сам.

Востребованность технологии. Насколько много вакансий на рынке, какие в среднем зарплаты. Причём лучше посмотреть по разным странам. Например, PHP-фреймворк Laravel очень популярен на Западе и сильно обгоняет своего конкурента Symfony, а значит, работу на нём будет находить значительно проще. А вот Yii имеет некоторую популярность только в России — да и то вакансий немного.

Порог входа. От этого зависит то, насколько быстро можно начать зарабатывать на этой технологии и решать реальные задачи. Например, у языка Java достаточно высокий порог входа, и даже если у вас за плечами несколько лет опыта в кодинге на другом языке программирования, не факт, что получится быстро перепрыгнуть в Java и сохранить уровень дохода.

Требования. Важно понимать, что от вас ждёт работодатель, и обычно это прописывается в вакансиях. Сколько лет опыта должно быть, нужно ли техническое образование и так далее. Например, при разработке хранилищ данных, скорее всего, без математического образования обойтись не получится.

Перспективность. Технологии могут устаревать и терять востребованность. Важно смотреть за динамикой роста популярности языков программирования и фреймворков. Например, Python держит позиции за счёт развивающегося направления машинного обучения, и вкладываться в него точно имеет смысл. Язык Go всё чаще используется для микросервисов в крупных компаниях, но нет гарантий, что этот тренд сохранится надолго.

Интерес. Конечно, нельзя добиться весомых результатов, работая с тем, что не драйвит и не вызывает интереса. Поэтому это очень важный пункт. Но учтите, что интересы со временем могут меняться — и это нормально.
Выбор фреймворка, равно как и языка программирования, зависит от множества факторов. Я приведу основные, самые значимые, на которые смотрю сам.

Востребованность технологии. Насколько много вакансий на рынке, какие в среднем зарплаты. Причём лучше посмотреть по разным странам. Например, PHP-фреймворк Laravel очень популярен на Западе и сильно обгоняет своего конкурента Symfony, а значит, работу на нём будет находить значительно проще. А вот Yii имеет некоторую популярность только в России — да и то вакансий немного.

Порог входа. От этого зависит то, насколько быстро можно начать зарабатывать на этой технологии и решать реальные задачи. Например, у языка Java достаточно высокий порог входа, и даже если у вас за плечами несколько лет опыта в кодинге на другом языке программирования, не факт, что получится быстро перепрыгнуть в Java и сохранить уровень дохода.

Требования. Важно понимать, что от вас ждёт работодатель, и обычно это прописывается в вакансиях. Сколько лет опыта должно быть, нужно ли техническое образование и так далее. Например, при разработке хранилищ данных, скорее всего, без математического образования обойтись не получится.

Перспективность. Технологии могут устаревать и терять востребованность. Важно смотреть за динамикой роста популярности языков программирования и фреймворков. Например, Python держит позиции за счёт развивающегося направления машинного обучения, и вкладываться в него точно имеет смысл. Язык Go всё чаще используется для микросервисов в крупных компаниях, но нет гарантий, что этот тренд сохранится надолго.

Интерес. Конечно, нельзя добиться весомых результатов, работая с тем, что не драйвит и не вызывает интереса. Поэтому это очень важный пункт. Но учтите, что интересы со временем могут меняться — и это нормально.
При выборе фреймворка или языка программирования необходимо всегда обращать внимание в первую очередь на его популярность и наличие экспертов в команде (или на рынке). Это позволит в будущем избежать проблем с поиском кадров. Можно выбрать в качестве языка, например, Scala или Clojure, которые, безусловно, имеют свои сильные стороны относительно консервативной Java, но потом столкнуться с серьёзной проблемой поиска специалистов, когда необходимо будет усилить команду или заменить сотрудников, которые решили покинуть проект.

Второй момент — это зрелость продукта. Всегда хочется использовать что-то новое и модное, но стоит быть готовым к тому, что молодой продукт может иметь достаточно серьёзные баги. Существуют примеры, когда необходимые доработки фреймворка ждут исправления месяцы, а то и годы. Не стоит также исключать, что в какой-то момент разработка фреймворка может быть остановлена. На мой взгляд, всегда стоит отдавать предпочтение проверенным временем продуктам. В качестве примера можно привести Java и Spring. Это практически стандарт де-факто в разработке бизнес-сервисов. Огромная накопленная база знаний сводит почти к нулю вероятность столкнуться с неразрешимой проблемой.

Стоить отметить, что в современной архитектуре приложений всё больше используется микросервисный подход. Он позволяет разделить большое приложение на много маленьких сервисов. Это позволяет многократно снизить последствия от неправильно выбранного языка программирования или фреймворка, и позволяет развязать руки в экспериментировании. Так как сервис мал, то в любой момент его можно достаточно быстро переписать.

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

Заявка на услуги DST

Наш специалист свяжется с вами, обсудит оптимальную стратегию сотрудничества,
поможет сформировать бизнес требования и рассчитает стоимость услуг.

Адрес

Ижевск, ул. Воткинское шоссе 170 Е.
Региональный оператор Сколково. Технопарк Нобель

8 495 1985800
Заказать звонок

Режим работы: Пн-Пт 10:00-19:00

info@dstglobal.ru

Задать вопрос по почте

Укажите ваше имя
Укажите ваше email
Укажите ваше телефон