Архив метки: job

Гибкость

Сначала мы несколько месяцев пишем ТЗ и составляем какие-то вспомогательные документы. А затем я в процессе реализации каждый день трачу уйму своего и чужого времени на выяснение деталей, потому что поменялись требования, совершенно разная терминология во всех документах, да и люди поменялись. Очень это тяжело. Очень неповоротливый проект.

Все менеджеры очень любят слушать и смотреть выступления на тему agile и прочих «гибких» методологий ведения проектов, но почему-то никто из них лично в моих проектах активно не работает с подобным.

В комнате сидят люди, которые целыми днями строчат огромные документально-монументальные трактаты в Word и e-mail, но услышать живого слова от них, если не спросить, невозможно ни в течение дня, ни за неделю.

Но самое главное, конечно, — что проекты делают, идеи появляются, мы куда-то движемся. Просто все остальное почему-то забывается, игнорируется.

Бизнес в наше время, конечно, несется молниеносно во всех областях и за ним надо успевать, что означает постоянное нарушение правил. Но ведь так хочется не просто клепать, а делать что-то значимое, интересное, качественное.

Попытка угнаться за счастьем, еще раз

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

Но иногда хочется всплакнуть по-поводу нехватки времени. Поэтому с завтрашнего дня я решил установить правило просыпаться в 7 часов. Утром ведь перед работой тоже можно успеть сделать некоторые вещи, на которые вечером сил не остается, или желания. Чего только стоит повесить баннер о предстоящем 5 февраля музыкальном openair «Полярник» от ребят с BBZ.RU в Королеве. Они делают какой-то промоушен, расклеивают какие-то афиши со ссылкой на bbz.ru, поэтому на всех страницах должен висеть баннер, ведущий на страницу описания мероприятия (приходите, кстати, горячий чай бесплатно, ну и недорогой глинтвейн и другие легкие согревающие напитки гарантируются). На тему зимы, кстати, Форбс тут запостил 8 необычных туристических поездок по России, в какие-то бы я обязательно съездил.

На днях в Моем Круге увидел обсуждение, которое гласило о том, почему нынче все IT-специалисты (программисты в частности) заламывают цены. Предполагалось, что во всем виноваты стартапы и крупные конторы, которые разгоняют рынок. Я им высказал свою простую истину, согласно которой цену, которую «заламываю» я — это всего лишь мои совсем не огромные потребности, человека, живущего в Москве. Если у кого-то на LinkedIn есть платный аккаунт, отзовитесь, у меня к вас вопрос есть.

«Немного» о работе

А. Носик (dolboeb в ЖЖ) недавно упомянул, что для него оптимальным сроком работы в одной компании является 2 года. Что не сделано за этот период, потом либо вообще не будет сделано, либо очень медленно и неэффективно. Моя текущая занятость продолжается уже 5-й год. Занимался я многим, но в данный момент, как и последние полгода и больше, реализовываю часть крупного портала для известного брэнда. Все это касается непосредственной той программной системы Mozart (http://www.mozartframework.ru/), с которой я начал работать на заре прихода в ADV (http://adv.ru/) и над которой непосредственно уже продолжил работу немного позже.

Будь я менее интровертен, я бы, наверное, мог стать IT-евангелистом этого продукта и всячески старался бы распространять информацию и мнение об этом непростом, но в тоже время довольно интересном фреймворке. Сейчас же я понимаю, что занимаюсь тем, что иду по дороге в никуда. Mozart хоть и открыт для всех, но реально им пользуются лишь несколько людей за пределами компании, а сама компания, ее менеджеры, лишь косвенно заинтересована в продвижении продукта. Поэтому все мои текущие знания — они теоретически. И практическая часть никак не пригодиться мне в будущем. Именно поэтому в свободное от работы время я интересует иными смежными технологями, поддерживаю свои сайты и блоги и общаюсь с людьми, которые работую с иными технологями (netcat, 1с-битрикс и даже umi.cms). Это мне нравится. Но это хобби, я не умею зарабатывать на своих хобби приличных денег. Это позволяет, работая над одним продуктом, заглядывать в другие и что-то портировать от них. Или наооборот что-то советовать пользователям на них и их разработчиком. Довольно интересно работать по линии фриланса (приятно порой один выходной день потратить на решение какой-то замороченной задачи для стороннего заказчика) и смотреть, как были реализованы некоторые функциональные части другими девелоперами до меня.

На Хабре имеется мое резюме. Оттуда мне порой пишут работодатели на предмет поработать над «крупным проектом». Иногда в роли девелопера, иногда в роли руководителя (резюме у меня двойственно). И все они касаются PHP. Это немного скучно. Из меня плохой программист, ибо какой-то непонятный склад ума. Никогда не любил погружаться глубоко в математику, да и разбираться с памятью своей тоже порой сложно. И иногда присылают заявки менеджеры каких-то совершенно разных компаний, которым надо портировать сайт на определенную CMS или переделать все. И вот тут начинается самое веселое, поэтому довольно часто я отказываюсь от подобных работ только на основании того, что на той стороне сидишь обычный менеджер, которые понимает лишь как все это работает внешне. Очень не хочется быть менеджером проекта и разбираться во всех нелепостях. Хочется быть просто технарем, которые красиво и быстро реализует поставленную задачу. А управлением пусть занимаются те, кому интересно читать Адовых клиентов (http://clientsfromhell.ru)

К чему я это все написал… Стою перед дилеммой, когда хочется заниматься тем, чем хочется, что нравится, к чему лежит душа. И не хочется тем, что попадается, навязывает. Но не складывается все. Точнее, большая часть. Ощущение, что занимаюсь чем-то никому не нужным, преследует меня. Никак не находится место под солнцем. И уж тем более речь не о трудоголизме. Речь лишь о том, чтобы делать и приносить этим пользу. Красиво об этом написано в Rework от 37signals, но уж больно идеализированно.

Недавно тут рассказывал, как без особых сложностей реализовывал облако «тэгов». А в блоге на bbz.ru уведомил об улучшениях по интеграции с известными музыкальными сервисами (у самого нет денег поднять хостинг в рамках проекта, уж больно много вкладываться в это). Но кому это надо и как от этого получить требуемое… Безумно хочется красиво писать о своих достижениях и наработках, но нет их. В последнее время мое руководство гонится за непонятными мне профитами.

Do you hate your job? Good. At least, you’re not bored with it. That’s how Tim Ferriss looks at it. According to Ferriss, feeling comfortable at your job can be a trap. «It’s worse to tolerate your job than to hate it because, if the pain is painful enough, you’ll make a change,» he says. «But if it’s tolerable mediocrity, and you’re like, ‘Well, you know it could be worse. At least I’m getting paid.’ Then you wind up in a job that is slowly killing your soul and you’re allowing that to happen. Comfort can be a very, very dangerous thing.» Tim Ferriss on tolerable mediocrity, false idols, diversifying your identity, and the advice he gives startups

Чем я занимаюсь по работе иногда

В процессе ежедневного труда в ADV приходится часто что-то программировать. В какой-то мере на мне висит сайт http://mozartframework.ru/

Учитывая мои навыки постоянного писательства в блоги мне иногда интересно на страницах выше указанного сайта иногда поделиться полезными материалами, как мы тут работаем. За последнее время на форуме Mozart Framework я опубликовал несколько таких постов:

  • 17 сентября я рассказал, как работает система логирования в Mozart. Используя Apache Commons Logging мы можем подключать различные реализации логеров. В примере описал 2 варианта: java.util.logging и Log4j
  • В этом материале я показал, как удобно можно скрестить работу контроллера в Mozart и его API для реализации функционала, выходящего за рамки обычного API. С помощью контроллера, который предлагает очень широкие возможность, различные функционал можно реализовать совершенно по-разному.
  • А вот тут я рассказал, как легко скрестить Mozart со свободной библиотекой OpenCloud для реализации на сайте облака тэгов. Ну и опять же применение контроллера для кастомизации нашей задачи.

Рабочие сложности

Была задача лаконично реализовывать выборку данных по определенным правилам. Сидел, ломал голову над SQL и GROUP BY (плюс DISTINCT). А ответ оказался совсем рядом, в так называемом перемножении таблиц.

Итого, вместо неработающего, но показывающего требуемую логику, кода:
SELECT broadcast.id FROM broadcast, programme WHERE programme.recommend=1 AND broadcast.programme=programme.id AND broadcast.begintime>=NOW() — INTERVAL ’30 minutes’ GROUP BY broadcast.programme;

Достаточно было написать вот такое простое и маленькое решение:
select b1.id from broadcast as b1, programme as p, (select programme, min(begintime) as begintime from broadcast where begintime>=now() — INTERVAL ’30 minutes’ group by programme) as b2 where b1.programme=b2.programme and b1.begintime=b2.begintime and p.id=b1.programme and p.recommend=1;