Всем привет, меня зовут Игорь Кононученко. Я киевский веб-разработчик. В данный момент я ищу людей, вместе с которыми можно делать красивые и интересные вещи. Да и просто хочется познакомиться и рассказать о себе.
Начало
Начну издалека. Около 6 лет назад на первом курсе (специальность — инженер-механик) я с большим трудом понимал как работают циклы, и моя сестра помогала решать задачи по информатике на Паскале. Потом я решил подготовиться получше к экзамену и решил все варианты задач из билетов. Так я начал понимать логику, циклы — элементарное.
Мне рассказывали, что у программистов хорошая зарплата, они знают математику и программируют в основном на C++ или Java. Деньги мне нужны были, и не верил я в денежность своей специальности. Я решил найти курсы, чтоб меня научили. Денег у меня не было, по этому летом я месяц работал курьером, и, сложив вместе с заработанным свои сбережения, пошел на курсы. Преподавала там тетя лет сорока. Она работала в какой-то гос. конторе и они клепали бухгалтерские программы на Delphi. Разработка велась в стиле накидывания контролов на форму. Этому я на курсах и научился. А еще я себе купил книгу по Delphi, и взял у двоюродного брата большую и толстую книгу по SQL, которую сам же ему на день рождения и подарил. Почитав книги, понял, что только так можно научиться, далее практически все свои деньги тратил на книги.
Надо было применить полученные знания и улучшить их. Вызвался писать бухгалтерию (накладные, отчеты) для магазина, в котором бухгалтером работала моя мама. Кривое и бажное приложение работало, генерило отчеты и использовалось до конца жизни магазина (его потом закрыли ). Тогда придумав бесчисленное количество велосипедов и получив начальный опыт, с еще большим желанием начал гнаться за знаниями. Кстати говоря, мне заплатили немного денег за эту программу.
Дальше я много читал, писал всякие мелкие штучки, отвечал и спрашивал на форумах. Мне стало не хватать русского интернета и книг. Я пошел на курсы инглиша.
Следующей программой стала программа для пчеловодов (считайте мой первый стартап, я и автор идеи договорились 50 на 50 поделить будущую прибыль). Я ее писал долго, больше года. За это время я перелопатил огромное множество знаний (рефакторинг, паттерны и многое другое). Писал я ее на Delphi 7, база данных MS Access. Приобрел кучу опыта, ведь практически с нуля знаний получилось сделать релиз. Потом я прекратил работу над программой, оказалось, что это приложение всего лишь маленькая часть того, что хочет сделать автор, и монетизацию планирует делать после того как я напишу остальное. А деньги мне были нужны, поэтому я начал искать способы заработать.
В период написания программы случилось несколько интересных случаев. Я ходил на собеседование в компанию Celenia (у них в требованиях был С++), чтоб подготовиться, я за день прочитал Страуструпа и у меня лопнул мозг. Меня не взяли, так как я был юным студентом. Но был у них на двух собеседованиях.
Веб-разработка
Альфатим — возле м. Золотых Ворот была контора, которая делала веб-приложение на ASP.NET для американской недвижимости. Не буду расписывать детали того, как я туда попал. Скажу лишь, что до этого у меня опыта с ASP.NET было 3 дня (я прочитал книгу), в C# я был более расшаренным (уже прочитал Рихтера, Троелсена), ну и обладал знаниями рефакторинга. Знал, что есть юнит-тесты, паттерны, хр. Чтоб попасть туда, мне пришлось без подготовки заполнить анкету, которая была взята с брейнбенчевских тестов асп.нет (позже сдавая на брейнбенч тесты я узнал там вопросы). Я ответил, и меня взяли. HTML, CSS, JavaScript я не знал… Разработка велась так — были проджект-менеджер, разработчик бизнес слоя, программист гуи, ну и я тоже делал гую. В коде бизнес слоя я увидел сплошной копипаст. Начал срочно рассказывать про паттерны, дублирование, смог затеять рефакторинг, еще рассказал ребятам про Решарпер. Резво начал, короче.
Расскажу о том как я представлял себе программиста (себя я так боялся назвать поскольку считал себя не совсем достойным, для такого громкого имени). Сильно идеализировал, думал, что программист знает все аспекты своей работы и делает все хорошо, и когда я буду с ним работать, он меня будет постоянно поправлять. Реальность показала обратное.
Много чего наколбасил в этом проекте, поскольку HTML не знал, занимался бросанием контролов на форму. Работал я там полтора месяца (я так с ними договаривалися, они меня хотели оставить работать). На заработанные деньги я себе купил мощный комп (до этого на полуправах разрабатывал на батином слабеньком компе). Сразу себе купил книгу по джаваскрипту и начал разбираться. После прочтения, услышал про аякс и предложил будущему партнеру по фирме создать тематический англоязычный проект. Так возник
AjaxLine (cейчас уже третья версия). Так я начал писать статьи и расти еще быстрее.
Своя фирма
С партнером решили создать фирму. Изначально начали зарабатывать деньги на рентакодере, который является удивительным хранилищем опыта. Фриланс дает мега-импульс для развития. Вошли в семь сотен лучших и нашли заказчиков вне сайта. Мега сложное и интересное время, с рентакодеровских денег мы платили за офис и себе зарплату, пока других вариантов не было.
Дальше в сотрудничестве с одной киевской фирмой (от них менеджмент, от нас разработка) мы начали делать проект масштаба СНГ и Прибалтики для одной очень крупной фирмы, которая делает фототехнику и сопутствующее. Проект на ASP.NET(C#) и SQL Server. Архитектуру и в основном все проектные решения принимались мною. Капитально вырос на этом проекте. Писали год, потом полностью отдали в руки той же киевской фирмы (проект вечный).
Потом был и есть MyHeritage. Большой стартап на PHP. У них более 20 миллионов зарегистрированных пользователей. Самая настоящая СМО. Мы для них делаем аутсорсинг. В основном приложения для социальных сетей и всякие сервисы интеграции. О том, как надо работать и следить за качеством я во многом узнал у этих израильских ребят.
Нынешнее
К нынешнему моменту, фирма уже в третьем офисе (двухэтажный дом в живописном месте возле Ленинградской площади).
Сейчас мы наконец-то вышли на украинский рынок, и делаем украинский стартап, проект пишем на Django, делаем его в стиле постоянной интеграции (можно сказать используем Agile методики).
Есть у нас также и свои проекты (стартапы), на которые вечно не хватает времени. А дописать и развить их очень хочется.
Предлагаю свои услуги в обучении
Наверное знаете, что людей найти сейчас ну очень сложно, если только возможно. Поэтому я готов учить людей, чтоб работать с ними.
Условия такие:
- Для тех кто хочет учиться удаленно. Я даю задание, в котором прорабатываются аспекты из списка данного ниже. Человек его выполняет, и я его сразу беру на работу. Также я готов бесплатно смотреть код, отвечать на вопросы где плохо и где надо лучше, давать ссылки на инфу. Кстати, список книг я составил.
- Обучение за деньги в режиме курсов. Два раза в неделю по часу мы встречаемся у меня в офисе и прорабатываем вопросы из списка представленного ниже (кроме 0 пункта). Занятие будет стоить 100 гривен. Я планирую набрать группу из 2-4 человек. Как только обучаемый выполняет тестовое задание и я вижу, что он готов работать. Я начинаю ему платить деньги за работу.
О своих знаниях и достижениях
Каждый пункт я знаю до какого-то уровня (обычно он выше того, который я встречаю у многих разработчиков). Пока в джаваскрипте есть Джон Резиг (правильно перевел?), в рефакторинге Мартин Фаулер, в сишарпе Джефри Рихтер, я себя не могу называть экспертом в этих областях.
Но, мне есть чем похвастаться:
- в 23 года я являюсь совладельцем и техническим директором фирмы штатом в 12 человек, которая делала и делает масштабные, интересные проекты;
- весь процесс разработки строился практически с нуля, в этом деле я сыграл ключевую роль;
- у меня хороший опыт работы с большим спектром технологий;
- я сам учился с нуля и хорошо понимаю как до человека донести знания.
Требования к обучаемым
- Английский язык. Человек просто обязан уметь искать информацию и читать технические книги и статьи на английском.
- Абсолютная беспонтовость. Там где начинаются понты, заканчивается обучение.
- Абсолютное желание научится.
- Наличие быстрого интернета дома.
- Обучать я буду людей только живущих в Киеве.
Программа обучения
- HTML, CSS. Разработчик должен без проблем уметь верстать, быть в курсе большого числа аспектов (семантическая верстка, спрайты, кроссбраузерность, фаербаг итд).
1.1. Понимание основ типографики, юзабилити, дизайна (ководства для начала хватит). - JavaScript. Синтаксис языка, понимание DOM модели, понимание того для чего и как работают джс фреймворки (к примеру прототайпджс, джквери). Способность писать многофункциональные клиентские приложения, виджеты.
- Вебсервер. Понимание того, как он работает. Умение поднять сайт на вебсервере.
- Рефакторинг. Надо знать как выглядит плохой код, чтоб писать хороший.
- Серверный язык, фреймворк. На выбор PHP/ASP.NET(C#)/Django(Python). Лучше всего знаю и больше всего опыта с ASP.NET(C#), в остальном могу дать твердую базу (основные принципы разработки одинаковы). Человек должен знать огромное количество разных аспектов (исключения, принцип одиночной ответственности, не доверять входным данным, комментарии в коде, структурирование кода итд итд).
5.1. Паттерны проектирования. Знать надо. Во многих веб-фреймворках зачастую реализованы какие-то паттерны. Важно уметь распознавать их. Уметь рефакторить код и получать на выходе готовый паттерн. - Постоянная интеграция. Что такое юнит-тесты, сложности написания, мокинг, интеграционные(компонентные) тесты. Контроль версий. Сервер интеграции. Билд, коммит, тесты и деплой за один клик.
- Регулярные выражения. Вещь абсолютно необходимая для уверенного обращения с текстом.
- Базы данных. SQL, проектирование.
Контакты
Пишите мне на мыло kigorw@naikonsoft.com и не забудьте рассказать о себе (знания, стремления, пожелания к обучению).
Если есть знакомые, которые хотят обучаться, смело советуйте меня.

