17 юни, 2019

Теодор Ханев е C# Software Developer в UltraPlay. Когато става въпрос за код, той  споделя следната мисъл: “Съвършенството е достигнато не когато няма какво повече да се добави, а когато няма какво повече да се премахне”.

Име и позиция, кратко представяне

Теодор Ханев, C# Software Developer

Какви са изискванията за тази позиция?

На първо място един C# Developer трябва да знае C# на много добро ниво, най-вече предимствата и недостатъците му спрямо други програмни езици. Също така, много важно е да знае как се пише качествен код, който може да се чете, разбира и разширява лесно от други програмисти. Голям плюс е опитът с по-сложни структури от данни и алгоритми, бази данни и конкурентно програмиране.

Какви са отговорностите?

Най-общо казано главната отговорност е развитието на системата за онлайн залагания върху традиционни и електронни спортове на UltraPlay. От една страна трябва да се добавят нови функционалности и да се разрешават възникнали проблеми. От друга страна системата трябва да се оптимизира, за да може да обработва повече данни и потребители.

Отговорностите ни нарастват непрекъснато, с увеличаването на клиентите на компанията, които оперират на международните пазари и привличат огромен брой любители на спортове по целия свят.

Какви средства за разработка използваш?

Използвам предимно Visual Studio за работа с код и с Git. За работа с база данни – SQL Server Management Studio.

Има ли tool, платформа, service, който използваш, въпреки че виждаш проблеми в него?

Всички! Във всеки по-голям софтуерен продукт има проблеми, независимо колко малки или големи са те. В днешно време има достатъчно алтернативи, от които можеш да избереш най-удобния според изискванията.

С какви други позиции в компанията има връзка твоята професия?

Back-end екипът ни работи пряко с Front-end и QA екипите в компанията. С Front-end често обменяме информация какви данни трябва да получават двата екипа. А с QA взаимно се опитваме да намерим корена на възникналите проблемите и тяхното решение.

Наред с работата между отделните екипи, е на лице постоянна и отворена комуникация между членовете в нашия екип, като предимно разменяме идеи и предлагаме подобрения по работните ни проекти.

Какви са предизвикателствата, които срещаш?

Най-голямото предизвикателство на всяка една задача е да се измисли и имплементира най-оптималното и просто решение. Цитирам Антоан дьо Сент-Екзюпери: „Съвършенството е достигнато не когато няма какво повече да се добави, а когато няма какво повече да се премахне“. В този смисъл се отнася и кодът – той не трябва да се прави излишно сложен. По-скоро трябва да е възможно най-минимален като логика, и лесен за разбиране, което понякога е доста трудно.

Коя е найтрудната задача, с която си се сблъсквал?

Най-предизвикателната задача бе свързана с дизайн и имплементация на система за разплащания, която обединява няколко криптовалути.

Колко време отнема, за да се достигне до Senior ниво?

Това е различно за всеки човек. Самоактуализацията играе голяма роля в този аспект. Трябва постоянно да се информираш за новостите в технологичния свят и да надграждаш знанията си. Трябва да работиш върху нови задачи, които те затрудняват до известна степен, за да има развитие. Няма как да станеш Senior без изброените стъпки, а техният интензитет определя периода, в който се достига Senior ниво.

Колко души работят в твоя екип?

В момента нашият екип се състои от девет души.

Проектът, по който работиш?

Проектът, по който работя, представлява мащабна система на UltraPlay, която предлага възможност за залагане онлайн. Използваме .NET Framework-а за сървърната част, а за потребителския интерфейс – React.

Продуктът на UltraPlay за залагане върху електронни спортове спечели 5 награди през 2018-а година, една от които на Global Tech Summit, който се проведе през ноември месец, в София.

Innovative Product of the Year, GTS Awards 2018

Какви други умения са необходими, за да бъдеш добър професионалист на твоята позиция?

Според мен работата в екип е единственото друго умение, което задължително трябва да притежаваш.

Каква е заплатата на специалист на твоята позиция?

Достатъчна, за да живееш нормално и спокойно без да се ограничаваш.

На кои въпроси трябва да може да отговори всеки кандидат за твоята позиция?

„Какво представляват SOLID принципите?“

„Какви са различните парадигми за програмиране?“

„Кои са най-важните принципи в програмирането?“

Вижте видео предложението на UltraPlay за Senior JavaScript Developer от тук.

Тагове: , , , , , ,