Красимир Карамазов е на 31 години. Вече 10 години се занимава с програмиране и определя себе си като „самоук“. Средното му образование е икономическо, а семестриално е завършил Софийски университет „Св. Климент Охридски“, специалност „Библиотечно-информационни науки“. Всичко, което е научил в сферата на програмирането, е по негова самоинициатива. В момента е Android Lead в MentorМate.
Началото на кариерата
Кариерата му стартира, когато за първи път вижда Photoshop. Първоначално иска да стане дизайнер и започва да си купува книги за дизайн. Това обаче не се получава и се насочва към програмирането. Започва сам да разработва Flash сайтове и приложения, без да има никакъв опит. Преминава през много технологии, но главните са Flash/Flex и Java. Първата му сериозна работа е в Mellon през 2008 като Flash разработчик. С течение на времето все повече се насочва към мобилните технологии и в момента e ръководител екип в Android отдела на MentorМate. На тази позиция освен с програмиране, работи много и с хора. „Първоначално си мислех, че ще ми е най-интересно просто да си продължа с разработване на приложения или писане на код. Но в крайна сметка се оказа, че ми е по-интересно да се занимавам с хора и да помагам за развитието им“, казва Красимир.
Вижте какво още разказа той за професията на програмиста и конкретно за позицията Android Lead, която заема в момента. С какво се занимава, какви отговорности има, как поддържа квалификацията си и какви са възможностите за развитие.
Какво е да работиш като ръководител на Android екип в MentorМate?
В какво се състои работата на програмиста и кои са най-големите заблуди за професията? В кръга на шегата е, че винаги можем да оправим компютри. Това невинаги ни се получава. Някои хора си мислят, че е прекалено лесно. Все още има такива представи – щом не е физически труд, значи е много лесно. Естествено, че не е. Като всеки един занаят си има своите особености и трудности. От друга страна пък много хора си мислят, че е изключително трудно да се влезе в бизнеса. Но само трябва да осъзнаят, че всичко върви логично, по стъпките си и просто трябва да знаят какви са те. С придобиване на опит това се развива.
Друга заблуда е, че трябва едва ли не да си математически гений. Реално това не е съвсем нужно и една нормална алгебра върши работа. Хората си мислят и, че това е работа само за гении. Естествено, че не е, просто трябва да има огромно желание, като с всеки един занаят, в който изграждаш нещо от нулата.
Кои са основните отговорности на позицията Android Lead? Отговорностите ми варират според деня. Първо, трябва да се грижа за кода и за продукта, по който работим. Разбира се, и за комуникацията с клиента, което е изключително важно, особено когато човек отговаря за различни екипи. Също така приоритизиране на различни задачи, преценяването кой човек ще се справи най-добре и разпределянето на задачите. Част от отговорностите ми са провеждането на интервюта и ревюта.
Понастоящем повечето ми време преминава в писане на код, а другото засега заема по-малка част от времето ми. Писането на код е приоритет, тъй като моята функция е да определя посоката, по която ще върви даденият приоритет като архитектура и т.н. Но честно казано, открих, че двете неща се допълват и не са взаимоизключващи се. Когато имаш страст и към двете, си помагат взаимно.
Как протича типичен работен ден? Тъй като сме американска компания, моят работен ден сутринта започва с преглеждането на кореспонденцията, която е текла, докато съм отсъствал. Въз основа на нея организирам работата си за деня. След това с хората от екипа обсъждаме какви ще са приоритетите и по какво ще работим. След сутрешните срещи и организационната част започва да се пише код. Впоследствие отново се стига до срещи и така приключва денят. Разбира се, има и изключения в дните, когато трябва да се правят ревюта или интервюта.
Кои са основните качества, за да бъдеш успешен на тази позиция? Според мен на първо място е необходимо желание. Желание за развитие, желание да се учиш, тъй като в този занаят самообучението никога не приключва. Винаги има ново нещо, което да се научи и ново нещо, което да се опита. Важно е да има и смелост – никой програмист не е уцелил нищо от първия път. Има една фраза: „Осмели се да се провалиш“. Общо взето това е цялата идея, защото в крайна сметка ще намериш истината. Изключително важно е и да можеш да работиш в екип. Има различни индивидуалности и човек трябва да се научи как да комуникира с тях. Доста са нещата - трябва аналитичен ум, да не спираш да развиваш знанията си. Когато се предлага някаква промяна, трябва така да комуникираш нещата, че хората, които не се занимават с това, да могат да те разберат и да разберат твоята гледна точка защо така би било по-добре.
Как се поддържа квалификацията? Това не е сфера, в която може да работиш просто ей така. Трябва да имаш желание и да знаеш, че непрекъснато трябва да се развиваш по всякакъв начин. И трябва да четеш постоянно. Във всички виртуални, а дори и реални общества, винаги се черпят нови идеи, излизат нови технологии, за които хората говорят. Примерно, когато ние в MentorМate откриваме нови технологии, имаме инициативи, с които ги презентираме и за повечето хора е интересно, тъй като след това се използват в различни проекти. Отвсякъде могат да се черпят знания, като естествено, най-удобно е през интернет.
Какви са възможностите за развитие? Бизнесът е изключително динамичен и възможностите за развитие са наистина много. Две са пътеките, които един програмист евентуално би могъл да поеме. Едната е на архитекта, а другата - на лийда. Архитектът е човек, който определя архитектурата и техническите насоки на проекта и оттам насетне поемат старши разработчиците. Другата е лийд – когато човек има афинитет към работа с хора и му е приятно да комуникира и предава знания. Това са основните пътеки за развитие, но ако човек има желание да придобие още знания, възможностите за развитие в този бизнес са изключително много.