ΠΠ΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°. ΠΠΎΡΠ°Π±ΠΎΡΠΊΠ° ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ°. ΠΡ ΠΈΡΠ΅ΠΌ ΠΎΠΏΡΡΠ½ΠΎΠ³ΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠ°, Π΄Π»Ρ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠ΅ΡΠ²ΠΈΡΠ° Π½Π° Django (Π±ΡΠΊ ΠΈ ΡΡΠΎΠ½Ρ). ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ ΡΠ°Π±ΠΎΡΠ° Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Ρ Π΄ΡΡΠ³ΠΈΠΌ ΠΎΠΏΡΡΠ½ΡΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ. ΠΡ Π½Π°ΠΌ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅ΡΠ΅, Π΅ΡΠ»ΠΈ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΡΠ²Π΅ΡΠ΄ΡΠ΅ Π·Π½Π°Π½ΠΈΡ Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ
Π½ΠΈΠΆΠ΅ ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ. ΠΠΆΡΠ½ΠΎΠ² Π½Π΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΠΌ. Π Π²Π°ΡΠΈ ΠΎΠ±ΡΠ·Π°Π½Π½ΠΎΡΡΠΈ Π±ΡΠ΄Π΅Ρ Π²Ρ
ΠΎΠ΄ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅: - ΠΎΠΏΠΈΡΡΠ²Π°ΡΡ Π²ΡΡΡ
ΠΈ Π½Π° ΠΊΠ»Π°ΡΡΠ°Ρ
ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Django, ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΡ Pydantic, dataclasses Python - ΠΏΠΈΡΠ°ΡΡ Π±ΠΈΠ·Π½Π΅Ρ Π»ΠΎΠ³ΠΈΠΊΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠΈΠ½Π°Π½ΡΠ°ΠΌΠΈ ΠΈ Ρ ΡΡΠ΅ΡΠΎΠΌ ΡΠ°Π±ΠΎΡΡ Π² ΠΌΡΠ»ΡΡΠΈΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ½ΠΎΠΉ ΡΡΠ΅Π΄Π΅ (gunicorn) - ΡΠΌΠ΅ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ°ΠΌΠΈ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΠ (select_for_update) ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΠΌΠΈ Django (atomic) - ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΊΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π·Π°ΠΏΡΠΎΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ select_related, prefetch_related - ΡΠΌΠ΅ΡΡ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌ API (requests Π»ΠΈΠ±ΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ API) - ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠΊΡΡΠ²Π°ΡΡ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ ΠΊΠΎΠ΄ ΡΠ½ΠΈΡ-ΡΠ΅ΡΡΠ°ΠΌΠΈ ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΌΠΈ ΡΠ΅ΡΡΠ°ΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ pytest, pytest-django, selenium - ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ MVC ΠΈ ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠ² KISS, DRY, YAGNI ΠΠ°Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΡΠ΅ΠΊ Π½Π° Π±ΡΠΊΠ΅: Django 2.2 (Π±Π΅Π· DRF), gunicorn, Postgresql, django_q, Redis, poetry, docker compose. ΠΠ° ΡΡΠΎΠ½ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΏΡΠΎΡΡΡΠ΅ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, Π½ΡΠΆΠ½ΠΎ ΠΈΠΌΠ΅ΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΎΠ± JS, HTML, CSS, jQuery, Bootstrap, AJAX Π’Π΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π·Π°Π΄Π°Π½ΠΈΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ, ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ Π»Π°ΠΉΠ²-ΠΊΠΎΠ΄ΠΈΠ½Π³Π° Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΠ°ΠΌ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² Π²Π°ΡΠΈΡ
ΡΠ°Π±ΠΎΡ ΡΠΎ ΡΡΡΠ»ΠΊΠΎΠΉ Π½Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΈ ΠΊΠΎΡΠΎΡΠΊΠΎΠ³ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³Π°.