В категория “Програмиране” акцента пада върху строго backend разработката, като предизвиква участниците да създадат конзолни приложения. Целта е да подчертае значението на server-side логиката и обработката на данни. Задачата, която ще бъде предоставена в деня на състезанието, ще изисква от участниците да приложат фундаментални принципи на backend разработката.
За състезанието участниците могат да избират между следните програмни езици: C++, C#, Java, Python или Node.js. Ограничената селекция на езици е решение, взето с оглед улесняване на процеса както за участниците, така и за журито, и унифициране на разработъчната среда.
Ще бъдат предоставени проектни заготовки с вградени тестове, които ще позволят на участниците да проверяват своите решения в реално време. Това представлява ценен ресурс за самопроверка и гарантиране на качеството на кода.
Участниците могат да се състезават индивидуално или в отбори до трима души. Всеки участник или отбор е отговорен за лицензионните права на софтуера, инсталиран на личния преносим компютър, който ще се използва по време на състезанието.
Решенията трябва да бъдат предавани чрез специален commit към репозитори, което ще бъде достъпно само за отборите. За седем часовия период на състезанието, всяка грешка спрямо коректността на имплементацията ще носи наказателни 20 минути, добавящи се към крайното време на отбора.
Всички участници са длъжни да имат активен GitHub акаунт. Той ще служи за предаване на решенията и ще улесни журито в процеса на оценка. Участниците също трябва да покажат базови умения в работата с Git, като това ще бъде важен елемент от процеса на състезанието.
За да можете да се подготвите по-добре за състезанието сме подбрали кратка библиотека с ресурси, които може да използвате, за да опресните или натрупате знания.
Журито ще оценява решенията на участниците в четири категории:
1. Коректност на имплементацията (60%): Оценява се дали приложението отговаря на зададените изисквания.
2. Качество на кода (15%): Преценява се чистотата, структурата и поддържаемостта на кода.
3. Време за предаване (15%): Отразява ефективността на участниците в управлението на времето и бързината на разработка.
4. Творчески подход/иновативност (10%): Оценява се оригиналността на решението, използване на съвременни технологии и подходи.
Представените критерии за оценяване целят да стимулират участниците не само към техническо майсторство, но и към ефективност и креативност при разработката на своите решения.
*Журито има право в деня на обявяването на задачата да обнови критериите спрямо заданието.