В даному репозиторії знаходиться sandbox-проєкт Djinni Jobs, який відображає список 15к вакансій. Це є тестова репліка на djinni.co/jobs
ПРИМІТКА: Дані по вакансіях використані у тестовому проєкті реальні, лише компанії та зарплати були модифіковані під тестове завдання - значить що зарплата та компанія що запостила вакансію не відповідає дійсності.
Функціональність пошуку має включати але може не обмежуватись такими параметрами:
- по заголовку (position) та опису (long_description)
- за ключовими словами, категорією (primary_keyword, secondary_keyword, extra_keywords)
- за зарплатнею (salary_min, salary_max)
- за видом роботи Офіс/Віддалено (remote_type)
- за країною (country) та містом (location)
- за рівнем англійської (english_level)
- за роками досвіду (experience_years)
- по назві компанії (company.name)
Вид/дизайн фронтендової форми пошуку - на ваш розсуд.
- Точність результатів до пошукового запиту
- Зручність та швидкість користування пошуком
- Читабельний/чистий код
Bonus points за продумане відображення результатів пошуку в інтерфейсі.
Ви можете використати їх для того щоби краще зорієнтувати свій скоуп:
- Неточний пошук за категоріями: деякі вакансії не видно в пошуку по категоріях або навпаки вакансії з інших категорій попадають в результат
- Додайте можливість додавати блок слова: наприклад, я шукаю AQA Python, але не Java. Або треба виключити Fullstack вакансії зі списку.
- Коли шукаю по технології "Solidity", попадаються вакансії із словом SOLID в описі
- Хочу фільтрувати вакансії по доменах та по аутсорс/продукт
- Дозвольте сортувати вакансії по відгуках та по даті публікації
Також ви можете самостійно проглянути наш форум Nolt і пошукати запити від користувачів там.
👍 DOs:
- Можете модифікувати/додавати моделі
- Встановлювати та використовувати будь-які додаткові фронтенд/бекенд модулі або сервіси. Якщо потрібно, додайте інструкцію інсталяції
- Ви можете модифікувати темлейт
templates/jobs/list.html
як забажаєте
🚫 DONTs:
- використовувати дані поза межами цього тестового без дозволу Djinni
- не треба модифікувати
templates/base.html
Щоби запостити ваше виконане тестове завдання, зробіть fork цього репозиторію та відкрийте PR із вашими змінами. Якщо будуть питання - звертайтесь в тг до автора цього завдання @ovvshiee.
- Docker: Engine: v27 Compose: v2.28
git clone [email protected]:djinni-co/djinni-jobs-search-test.git
cd djinni-jobs-search-test
cp .env.example .env
docker compose build
docker compose up
See active containers list:
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ba15bc763d0b djinnitest-web "python app/manage.p…" 16 minutes ago Up 5 minutes 0.0.0.0:8000->8000/tcp djinnitest-web-1
8c7c57d12f01 postgres:latest "docker-entrypoint.s…" 2 hours ago Up 5 minutes
In this example the 8c7c57d12f01 is the <CONTAINER ID>
of the postgres container.
Replace <CONTAINER ID>
with the id of the postgres container and run the command:
cat dump.sql | docker exec -i <CONTAINER ID> psql --user admin djinni_sandbox
For Windows:
docker compose cp <path to dump>dump.sql db:.
docker compose exec -it db psql -U admin -d djinni_sandbox -f ./dump.sql
docker compose up
If installation succeed you will see the following in the console:
web-1 | Django version 4.2.4, using settings 'djinnitest.settings'
web-1 | Starting development server at http://0.0.0.0:8000/
web-1 | Quit the server with CONTROL-C.
Now open the http://0.0.0.0:8000 and you will see jobs list.
Good to go! 👍👍