Поиск работы прояснил моё осознание собственных пробелов в профессиональной области. А заодно обнаружил тот факт, что будучи заперт в штампующей никому не нужные макеты интранет-приложений провинциальной фирме, просто отстаю от индустрии с перспективой отстать безнадёжно. Далее я попытаюсь для себя изложить, каких востребованных работодателями козырей мне на нынешний момент не хватает.
- Портфолио - его у меня нет и на нынешней работе не будет. Разве что если напрячься и выполнять сторонние заказы в свободное время, но их тут, в Твери, не особенно-то нароешь.
- PHP5 отличается от PHP4 всякими мелочами, но главное - это гораздо более полная реализация парадигмы объектно-ориентированного программирования. Я об этом уже писал. Теоретическое представление имею. Практического опыта нет и на нынешней работе не будет, не применяется у нас PHP5. Собирался я тут перевести Маоизм.ру и связанные проекты на Drupal, соблазнившись его таксономией, и через это освоить PHP5, но - вот незадача! - движок сей пока что тоже, говорят, основан на PHP4. Кстати, опыта работы с CMS у меня тоже нет, в т. ч. с такой востребованной как 1С-Битрикс (хотя с ней связываться и не хочу, ибо читал это и это и ещё кучу отзывов, где о Битрикс отзывались крайне нелицеприятно; и вообще к 1С у меня душа не лежит, хотя это огромная куча рабочих мест). Наконец, с Zend Framework я дела не имел и PEAR видел только мельком. Зато свою библиотеку для работы с различными СУБД изваял, изящно обойдя там проблему невозможности множественного наследования и отсутствия интерфейсов с помощью аггрегатных классов (а потом на собеседовании поплыл на вопросе, что такое интерфейс,- ну и немудрено).
- Дела с фреймворками для Javascript (напр., jQuery) я не имел. Почему? Потому что нам ни к чему было главное их достоинство - кроссбраузерность. Вся разработка велась под Mozilla 1.3, а потом - под Firefox 1.5. Понятно, что при таких условиях код для обеспечения кроссбраузерности избыточен, а эксплуатировать особенности названных браузеров лучше напрямую. Как плюс - зато я приучился к W3C-стандартам, уяснил смысл XHTML, немного залез в XUL (вот только в мире кроссбраузерности эта удобнейшая технология ни к чему). Можно ещё смело заявить, что я имею опыт разработки собственного фреймворка! Ведь моя задача состояла в том, чтобы снабдить разработчиков модулей библиотекой методов для отрисовки и управления приложением, т. н. «богатым клиентом». Сейчас, с нуля я бы всё делал совсем иначе, и XUL бы положил в основу, и XPCOM, а разработчиков модулей заставлял бы писать не жуткую смесь HTML, CSS и Javascript, а чистый семантический XML в каком-нибудь подобающем редакторе. Но, увы: направление разработки было задано до меня и когда я только пришёл, а теперь всё менять уже поздно.
- С шаблонизаторами, напр., Smarty, не работал. У меня эта технология априори вызывает недоверие; XSL (с коим я, как раз работал, и хотел бы работать ещё) выглядит куда более правильным подходом, он ещё и востребован много чаще, только почему-то по специальностям, связанным с незнакомыми мне Java, .NET, C#, C++. С перечисленным, вероятно, ещё придётся потягаться и начать я планирую с Java, особенно если зависну на нынешнем рабочем месте, где оный язык предполагалось пощупать в ближайшее время.
-
Со всякой графикой - Adobe Photoshop, Corel Draw - я имел дело (можете полюбоваться на некоторые мои миниатюрки или, вот, хоть, недавнюю валентинку), пусть и не как профессиональный дизайнер, но не с Adobe Flash, который очень часто требуют от Web-разработчика. Не совсем понятно, стоит ли связываться, или это уведёт меня вбок, от программирования - к дизайну. Тем более, что Flash в Web я не одобряю, а одобряю SVG (жаль только, он на рынке нахрен никому не нужен), а есть ещё такие перспективные альтернативы как canvas и Silverlight, коему прочат блестящее будущее, да и та же Java.
- Используемая нами база данных - PostgreSQL (ну, ещё была Interbase). Я не жалуюсь, это приятная СУБД, но ведь большинству-то нанимателей требуется MySQL (в отношении 15:4, судя по Headhanter'у)! Надо, что ли, хоть спецификацию проштудировать, чтобы с чистым сердцем врать, что я ею владею. А в освоении его на практике, кстати, как раз может помочь Drupal. Так что я весьма не исключаю масштабной переделки Маоизм.ру весной-летом (ах, да, нынешний хостинг не предусматривает баз данных, а он, кажется, проплачен до июня, но я ведь могу всё это сначала поставить и освоить локально, вот потом и будет мне опыт репликации). Да, в PostgreSQL используется PL/pgSQL (с коим я колдовал куда более, нежели хотел бы, и не без успеха - во всяком случае, систему ведения Materialized Path для иерархических структур на триггерах соорудил - но, увы, на собеседовании с меня спросили Nested Sets), вроде бы близкий к PL/SQL в Oracle RDBMS, что рождает мысль замахнуться на последнюю, хоть мне и претит её проприетарность.
- SVN мы не использовали. Полагаю, потому, что программистов мало. Прикладники в счёт не идут, а системщиков было трое, один уволился, а второй (начальник) свалил всё на меня. Ну и какой контроль версий практически нужен одинокому чародею-самоучке? А в больших фирмах это вещь, я так понимаю, необходимая.
- Unix's - это, как мне кажется, дьявольщина. Хотя наша разработка ведётся как под WinXP, так и под Linux, каких-либо специфических знаний последнего не требовалось. Скорее требовалось знание особенностей сертифицированного для обработки секретной информации клона сервера Apache, но кому это нужно вне данного сектора? Тем не менее, комп с Linux'ом у меня под рукой стоит, я в него периодически тыкаюсь, а параллельно самоотверженно штудирую книжку про Unix-системы. Книжка доставляет и много. Чего - пока не пойму.
- Наконец, есть познания из седой старины; то, чем я не занимался лет 5-10, так что не ясно, можно ли и стоит ли скиллы сии реанимировать: Delphi, Visual Basic, а также совершенно не востребованные сейчас на рынке труда Adobe PageMaker (великая Каннон, это ещё зачем?!) и Prolog (дюже приятственная для моего рассудка, но крайне экзотическая вещь). На всякий случай: когда-то я это знал, так что сейчас, можно сказать, знаком с принципами.
P. S. Тем, кто мужественно дочитал до конца: сами вы
быдлокодеры, а я -
труъ-
манул,
ня! С будущностью, не менее блестящей, чем у Silverlight, а более. Погладил(а)? А теперь - программировать!