Рефакторинг кода проекта на Node.js

Бюджет По договоренности
Создан: 2 года назад
На модерации
Описание
Здравствуйте! Есть проект (ERP-система для бизнеса), написан на Node.js+Express и Mongo. Необходимо привести код в порядок, т.к. человек, который начинал писать проект, особо не волновался о красоте кода. Цель: переписать проект так, чтобы он был масштабируемым. Потенциальным Исполнителям будет отправлен архив с исходниками для ознакомления. По итогу, качество работы будет оценено разработчиком с нашей стороны. 
Просьба внимательно ознакомиться с заданием, затем назвать сроки и стоимость Вашей работы(В заказе обозначена условная сумма).
Откликайтесь ТОЛЬКО если Вы уверены в том, что справитесь, и знаете о чем идет речь.

На данный момент поставлены следующие задачи по выполнению задания:
1. Поменять структуру файлов, отдавать предпочтение понятиям separation of concerns, clean code architecture; разбить файлы не по категориям (типа api/rbac/search), а по их предназначениям (/controllers, /middlewares, /repositories, /models) 
2. Избавиться от мертвых/неиспользованных кусков кода
3. Настроить среду для тестирования и написать unit test, использовать Jest; при нужде stub'ов отдавать предпочтение Sinon; собирать coverage report
4. Рассмотреть пакеты и dependecies, обновить актуальные пакеты и удалить не нужные пакеты. Также стоит проверять на возраст/активность пакета. Используемые пакеты должны часто обновляться и иметь регулярные патчи
5. Перевести старый синтаксис (<ES5) на более новые версии языка; отдавать предпочтение на константы, arrow functions, object destructuring, optional chaining при замене старого синтаксиса
6. Настроить тандем ESLint и Prettier
7. Отделить логику обработки базы/эндпойнтов по соответствующим логическим папкам (/contollers, /repositories etc.)
8. Избавиться от излишней абстракции методов, папок, классов
9. Пересмотреть логику хранение файлов (streams, buffers)
10. Настроить систему кэширование запросов (предпочтительно использовать redis или node-cache)
11. Оптимизировать работу базы данных и запросы, индексировать часто используемые поля; сокращать количество документов при READ операциях; использовать проектирование ($project) для вытаскивания только нужных полей по мере возможности; использовать намеки ($hint) на индексы

Также, будем рады сотрудничать на долгосрочной основе с Вами, если Вы ответственный человек, знающий и любящий свое дело.
Благодарю, что уделили время!
Категория
Источник: fl.ru

Похожие проекты

 
0 2
Основной задачей является тестирование игрового мода для разрабатываемого нами проекта на базе GTA SAMP (San Andreas Multiplayer). Главной задачей тестирования является поиск багов, то есть недоработок игрового мода, как смысловых (система работает, но бессмысленно/не правильно) так и визуальных (метка......
safe 
0 1
Разработка виртуальной среды для Proxmox. Необходимо разработать обход обнаружения античитами видеоигр виртуальных машин на proxmox. Надо иметь возможность разделения видеокарты на несколько виртуальных машин и предоставлять прямой доступ к карте. Использовать патченное ядро, закрывающее баг RTDS обнаружения.......
1 месяц назад
$3
0 1
расшифровать или подобрать MD5 Хэш: c74d673f4042bd732ae2a287c059a9ba. начало ответа 8385626820 8385626820. хх....
4 месяца назад
safe 
0 5
Cофт для автоматической торговли токенами в сети Solana. На разработку с тестами и устранением багов выделяется 1-2 месяца, при превышении контракт расторгается!...
safe 
0 8
Необходимо разработать систему, которая: Подключается к API Diagnocat и iDent (через токены доступа). Получает данные о пациенте, результатах диагностики, снимках и назначениях. Автоматически формирует структурированный отчет по шаблону (включая врачей, этапы лечения, стоимость и описание процедур).......
 
0 1
Необходимо связать БД 1C:ERP с БД Outlook, MS Access, Битрикс24. Например при вводе нового сотрудника в 1С:ERP он должен автоматически появляться в вышеперечисленных БД....
9 месяцев назад
 
0 3
Требуется реализация отчёта на кастомизированной 1С:УПП 1. 2, ТЗ и контрольный пример во вложении, 80% кода должно быть покрыто модульными тестами....
9 месяцев назад
$7
0 5
Мне нужно копировать мой текст и вставлять в одну группу ВК с открытой стеной для публикации рекламы. Задача скрипта/сервиса/программы - примерно каждые 10 секунд брать мой текст и вставлять в эту группу. Я пробовал через одну программу, которая записывает действия мышки и потом повторяет, но она как-то......
11 месяцев назад
safe 
0 2
Написать прошивку для A94B114, используя 2 подобные рабочие прошивки. Все файлы есть....
$21
0 3
Нужно разархивировать файл архив. ujems, есть распаковщик, но выдает ошибку. Прислать пруфы(скрины)....
1 год назад
safe 
0 2
Входные: Имеется скрипт по обработке email писем и добавление их в систему Redmine   Проблема: Система обработки этих писем написана некорректная и негибкая    Задача: Переписать логику обработки входящих писем, чтобы исключить их потерю при незначительных отклонениях от ожидаемой структуры....
$37
0 4
- В обязанности сотрудника входит поддержание мобильного приложения системы автоматизации бизнеса. - Работа сдельная: задачи выдаются на оценку, далее после согласования передаются на реализацию. - Заключаем договор и NDA (соглашение о неразглашении)....
$71
0 1
Информация о проекте: Проект включает в себя React Native приложение с Expo внутри которого находится webview с сайтом На устройствах с ОС IOS проблема с воспроизведением видео....
1 год назад
safe 
0 2
Разрабатываю десктопные программы на языке Java,  а так же Java + SQL....
 
0 9
  1. Чтобы можно было писать описание события (без заголовка) - превью в списке берется N количества букв с начала. (в списке писать дату события и сколько осталось до него) . Выставление даты и времени напоминания и ИНТЕРВАЛА ПОВТОРА ОТ 1 МИНУТЫ! Выставлять количество повторов, далее напоминания прекращаются.......
safe 
0 7
Сайт arg2028t. beget. tech/. Нужно сделать вот такой калькулятор. airprint. by/outdoor/wide-format. и еще некоторые доработки....
safe 
0 10
Краткое описание: Мы ищем исполнителя для тестирования функционала мобильного приложения на платформе Android. Задача включает проверку основных функций приложения, таких как работа комнаты, передача видео, звука и чата, а также создание подробной отчетности о найденных ошибках.   Требования к исполнителю:......
safe 
0 16
Разработка чат-бота под ваши нужды....
$143
0 1
Oпpocы (1008pyб/чaс) Заходитe на сaйт: gonsù....
1 год назад
Смотреть все