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

Всегда получайте удовольствие, создавая приложения, иначе вы сделаете это неправильно!

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

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

Ключевые особенности:

  • Мертвый простой
  • Свет
  • Несвязанный код
  • Легко проверить

REACT: мы работаем с React над созданием интерактивных пользовательских интерфейсов - несвязанных, чистый, тестируемый код, простой в обслуживании. Молниеносно - 60 кадров в секунду без оправданий.

Relay Modern: поскольку мы много работаем с GraphQL, мы используем Relay, чтобы гарантировать, что наш код не только оптимизирован, но также чист и прост в понимании и поддержке.

Webpack 2.0 Сборщик модулей для современного JavaScript-приложения - помогает нам в работе и оптимизации JS.

Redux: нам нравится чистая модульная бизнес-логика, которую легко тестировать. Redux - идеальный инструмент для управления состоянием, а с ImmutableJS работает как шарм.

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

TypesScript: JavaScript на стероидах, наш код должен быть всегда чистым и на 100% непротиворечивым. Это помогает нам работать безопасно, содержать код в чистоте и работать более продуктивно, поскольку мы можем полностью сосредоточиться на том, что действительно важно.

Elixir: - это динамический функциональный язык, разработанный для создания масштабируемых и поддерживаемых приложений. Elixir использует виртуальную машину Erlang, известную своей работой с распределенными и отказоустойчивыми системами с малой задержкой.

Node.js: Node.js позволяет нам создавать легкие и эффективные веб-серверные приложения - он работает очень быстро, как и мы.

RxJs: каждый раз мы добавляем в наши приложения больше сложности, больше данных и асинхронное поведение. Как нам всем этим управлять? Как его масштабировать? Переходя к «реактивным архитектурам», которые являются событийно-ориентированными, гибкими и отзывчивыми.

NPM: менеджер пакетов для JavaScript. Это позволяет нашей команде использовать и распространять модули JavaScript, доступные в реестре npm (лучше работает с Yarn :))

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

CircleCI: современная платформа непрерывной интеграции и доставки,
которую мы любим использовать. Все автоматизируйте!

Технологии мирового уровня предоставляют программное обеспечение мирового класса

Но даже самые лучшие инструменты бесполезны, если вы не уделяете им достаточно времени на практике. Важно максимально эффективно использовать то, что у вас есть. Узнайте обо всех преимуществах и недостатках ваших инструментов. Это то, что нужно, чтобы стать отличным разработчиком.

Если вы знакомы с инструментами, которые мы используем, возможно, вы как раз подходите для нашей команды. Мы работаем над интересными проектами для амбициозных стартапов из Лондона и Сан-Франциско. Не стесняйтесь прислали нам немного информации о вас.