Разработка серверных приложений

 

Я уже много лет занимаюсь разработкой серверных приложений на Java и Python (в зависимости от задачи), а так же full stack разработкой. За это время накопил большой практический опыт в этих областях, который использую в своих проектах.

Для разработки серверных приложений и микросервисов на Java я обычно использую следующий стек технологий:

  • Apache Tomcat, Jetty - контейнеры сервлетов
  • JBoss Fuse - интеграционная шина (ESB)
  • Hibernate, MyBatis, OrmLite - ORM-фреймворки для работы с базами данных (выбираю в зависимости от сложности проекта)
  • Spring Framework - используею для конфигурирования компонентов приложения, реализации аутентификации и авторизации (Spring Security), создания RESTfull API (Spring MVC) и т.д.
  • Apache Camel - фреймворк, реализующий интеграционные паттерны проектирования. Позволяет выстроить удобную маршрутизацию внутри приложения, организовать гибкую структуру, а так же содержит много готовых компонентов для реализации различного функционала
  • Apache CXF - незаменимая вещь при разработке SOAP-сервисов
  • JUnit, TestNG - качественное приложение не может обойтись без тестов
  • Maven, Gradle - использую для сборки проектов (выбираю в зависимости от задачи)

Для разработки приложений на Python я обычно использую следующий стек технологий:

  • Django - отличный MVC фреймворк с множеством готовых компонентов для различных задач
  • Django CMS - лучшая CMS на основе фреймворка Django.
  • Django REST framework - использую для создания RESTfull API
  • Pyramid - хороший программный каркас для разработки web-приложений различного уровня сложности
  • CherryPy, Flask - использую в небольших проектах
  • Scrapy, BeautifulSoup - использую для поиска и извлечения нужных данных с web-страниц
  • SQLAlchemy - отличный ORM-фреймворк для работы с базой данных

В качестве системы контроля версий я предпочитаю использовать Git, но имеется опыт работы и с Subversion. Для контроля качества кода я всегда использую статический анализатор SonarQube.

Стоимость работ зависит от сложности проекта и обговаривается индивидуально.

По вопросам разработки серверных приложений: контакты.

blog comments powered by Disqus