Требования:
- Опыт работы от 2 лет в разработке на Go.
- Глубокое понимание основных концепций и возможностей языка Go, включая работу с горутинами, каналами, интерфейсами, обработку ошибок и т.д.
- Знание распространенных архитектурных паттернов и их применение в разработке на Go (например, Clean Architecture, Domain-Driven Design и т.д.).
- Опыт работы с реляционными и/или NoSQL базами данных, такими как PostgreSQL, MySQL, MongoDB и т.д.
- Понимание принципов работы HTTP и опыт разработки RESTful API.
- Опыт написания модульных, интеграционных и функциональных тестов для кода на Go.
- Опыт работы с системами контроля версий, такими как Git.
- Хорошие коммуникативные навыки и умение эффективно взаимодействовать с другими членами команды.
Обязанности:
- Разработка высокопроизводительных и масштабируемых серверных приложений на языке Go.
- Оптимизация производительности серверного кода, включая работу с базами данных, кэширование и асинхронную обработку запросов.
- Разработка и оптимизация запросов к базам данных, проектирование схем данных и работа с миграциями.
- Обеспечение безопасности приложения, включая защиту от атак и обработку пользовательских данных.
- Написание и выполнение тестов для серверного кода, а также отладка и исправление ошибок.
- Взаимодействие с другими членами команды, включая фронтенд-разработчиков, дизайнеров и QA-инженеров, для достижения общих целей проекта.
- Написание документации к коду и API для облегчения понимания и использования разработанных решений.