// companyInfo.js
const fetchCompanyInfo = async () =>
return new Promise((resolve) =>
setTimeout(() =>
resolve(
Мы - крутая команда из Нижнего Новгорода, ищем хардкорного кодера, который с кайфом будет работать у нас.
Изначально thinkopp создавался как продакшн, теперь мы занимаемся полноценно и "вебом", поэтому в ближайшее время нас ожидает ребрендинг и превращение в digital-агентство полного цикла.
Мы очень молодые на рынке, но среди наших ключевых клиентов уже отечественные ТОПы в сфере бизнеса, сейчас активно расширяем команду - планируем открывать доп.офис в Москве.
);
, 1000);
);
;
export default fetchCompanyInfo;
// offerDetails.js
export const getOfferDetails = () =>
return
Что у нас есть крутого для тебя:
- Проектная работа с частичной занятостью или официальное трудоустройство выбирай, что удобнее!
- Гибкий график: начинай и заканчивай рабочий день, как тебе удобно.
- Максимально дружественная и лояльная команда
- Возможности роста - если ты с нами с самого начала, то через год-два, будешь тим-лидом или сеньёром-помидором в нашей команде.
- Возможность перехода на гибридный график после испытательного срока.
;
;
// stackDetails.js
export const getStackDetails = () =>
return
Наш стэк мощь и хайп:
- Node.JS, Express, NestJS
- TypeScript
- PostgreSQL, ClickHouse, MySQL, Redis
- Swagger
- Docker, Kubernetes (k8s)
- Go, Python (при необходимости)
;
;
// requirements.js
export const getRequirements = () =>
return
Кого мы ищем:
- Бэкенд-гуру с опытом от полутора лет, минимум последний год на Node.JS.
- Ас TypeScript, Node.js и Express/NestJS.
- Докер-мастера.
- Реляционного БД-магистра.
- Гит-ниндзя с пониманием методологий работы с Git.
- Архитектора от природы.
;
;
// bonusSkills.js
export const getBonusSkills = () =>
return
Бонусные суперспособности:
- Бэкенд-опыт на других языках (даже пет-проекты считаются): PHP, Java, Python, Go.
- Опыт работы с Unix-системами.
;
;
// responsibilities.js
export const getResponsibilities = () =>
return
Чем будешь заниматься:
- Реализовывать новую функциональность для наших крутых проектов.
- Писать документацию в Swagger для новых API-методов.
- Разрабатывать автотесты на новую и существующую функциональность.
- Участвовать в перекрестных code review в команде.
- Поддерживать существующие проекты, разрабатывать новую функциональность и исправлять баги.
- Участвовать в разработке архитектуры проекта.
- Оценивать задачи.
- Консультировать менеджеров по техническим вопросам.
;
;
// conclusion.js
export const getConclusion = () =>
return
Если ты готов стать частью нашей команды, присылай отклик! Давай делать крутые вещи вместе!
Люди, которые дочитали вакансию до конца - мы на вас молимся. Напишите, пожалуйста, короткую пасхалку на Node.js (хоть строчку одну), чтобы дать нам знак, что вы человек внимательный).
;
;
// displayVacancy.js
import fetchCompanyInfo from './companyInfo.js';
import getOfferDetails from './offerDetails.js';
import getStackDetails from './stackDetails.js';
import getRequirements from './requirements.js';
import getBonusSkills from './bonusSkills.js';
import getResponsibilities from './responsibilities.js';
import getConclusion from './conclusion.js';
const displayVacancy = async () =>
try
const companyInfo = await fetchCompanyInfo();
const offer = getOfferDetails();
const stack = getStackDetails();
const requirements = getRequirements();
const bonusSkills = getBonusSkills();
const responsibilities = getResponsibilities();
const conclusion = getConclusion();
const vacancyDetails =
companyInfo,
offer,
stack,
requirements,
bonusSkills,
responsibilities,
conclusion
.join(' n');
console.log(vacancyDetails);
catch (error)
console.error('Ошибка при получении данных о вакансии:', error);
;
// Вызов функции, чтобы увидеть вакансию в консоли
displayVacancy();