3

Записки программиста 1. Рай

Довелось некоторое время работать в международной компании, занимающейся разработкой софта для интернет-казино(кстати, лидер в своей области). Проработал я там около двух лет.

В компании несколько отделов: html5(мобильные разработчики), flash(desktop-разработчики), java-team(backend) и, конечно, тестеры. Я работал в команде html5-разработчиков. Самым организованным отделом был наш. Тимлид html5 разработчиков организовал для нас практически рай.


Так вот, код. Самое главное, с чем имеет дело программист в посведневной работе. В тиме был введен унифицированный стиль написания кода(т.н. codestyle). Это здорово, поскольку так куда проще разбираться в чужом коде. Имелся собственный фреймворк, написанный на чистом js и заточенный для написания игр под мобильные устройства. Фреймворк был кроссплатформенным(поддерживались WinPhone, Android > 4.1, iOS > 5.0). Те, кто писал кроссплатформенные вещи на js, знает, какой зоопарк устройств приходилось поддерживать. Ах да, мы писали на js в ООП стиле. Причем, без ограничений от канонического ООП. На js! И все это до TypeScript'a! Фантастика! Поскольку фреймворк был шикарно структурирован - он позволял писать невероятно гибкие системы. Там было все, что нужно: и собственные структуры данных(дерево, очередь, матрица, конечный автомат и т.д.), и собственная система инициализации событий(как в jQuery, только лучше), и грамотное разделение фреймворка на модули. И все это добро приправлено просто горой различных шаблонов проектирования. Было здорово копаться в нем и смотреть, что да как устроено.


Документация. Она была! В ней было дано описание основных систем фреймворка, как с ним работать и были описаны его ограничения.

Процесс разработки. Строился так: тебе падает задача, ты сам оцениваешь время, которое тебе понадобится для ее решения. Все эти оценки ты отражаешь в документе - плане. План ты строишь скурпулезно, описывая работу по часам. В нем ты можешь учесть и время на тестирование и время на непредвиденные трудности. Было одно условие: соблюдение временных рамок плана. Ну, или если есть отклонения по времени, сообщать заранее, а не тянуть до последнего. Но такое случалось редко, поскольку скурпулезное построение плана позволяет распределить время очень точно. В общем - это удобно. И разработчику - детально знает фронт работ, знает крайний срок, распоряжается им. И тем более начальству - иметь точные сроки реализации мечта любого начальства. Во время кодинга, конечно, ты можешь советоваться с более опытными разработчиками - тебе всегда окажут помощь. Благодать.


Используемые технологии: фреймворк использовал последние стабильные достижения в области js-кода(например: canvas, web audio API и т.д.). Конечно же, мы использовали систему контроля версий. Трекером задач служил redmine.


Такое ощущение, что тимлид начитался книги "Совершенный код" и, вдохновленный идеями из этой книги, решил многие из них воплотить в жизнь.Какой гик о таком не мечтает?

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества