Мы публикуем на сайте мнения и отзывы коллег, выпускников прошлых лет, ныне представляющих успешные телекоммуникационные компании Санкт-Петербурга. Тексты стараемся публиковать в формате пожеланий, дословно. Читайте и мотайте на ус, уважаемые соискатели!
Также рекомндуем ознакомиться со статьёй В. А. Фрейнкмана и М. А. Семёновой (НТЦ ПРОТЕЙ)
«Реалии современного образования в ИКТ-отрасли».
Михаил Усков
IT-директор НТЦ АРГУС
Чего обычно не хватает в стандартном выпускнике СП для работы в НТЦ АРГУС?
1. Курс по базам данных надо усилить.
- усилить не только "традиционные" реляционные БД, но и освещать другие (объектные, NoSQL)
- многопользовательская работа с данными, целостность данных, транзакции, блокировки, "неблокирующие структуры данных", масштабирование
- добавить разделы по особой работе с данными: аналитика (OLAP) и основы Data Mining
2. Ввести курс по архитектуре и дизайну ПО.
- включая рассмотрение известных паттернов проектирования
- включая вопросы организации интеграции разнородного ПО
3. Разработка для web
- знакомство с традиционной web-разработкой, "LAMP" (linux-apache-mysql-php)
- современный HTML (HTML5), CSS (CSS3 и SASS) и JavaScript (JQuery, различные Node.JS, Angular.JS и др., GWT)
- усилить курс Java, рассматривать в нём не только примеры "Hello, world" и "Array vs List", но и распределённые системы, и конкурентную многопоточность и пр. и др.
- хотя бы пару самых распространённых фреймворков Java (Spring, или даже что-либо под JavaEE)
- облачные технологии (общие понятия, примеры разных платформ, принципиальные отличия в разработке ПО)
- разработка для мобильных устройств (основы Android, iOS)
- основы разработки высоконагруженных систем (+ сюда же высоконагруженные БД)
4. Усилить курс по технологиям разработки и сопровождения.
- методологии разработки (RUP и Agile со всякими разновидностями)
- планирование, трекинг задач разными способами, метрики процесса разработки
- "непрерывная интеграция" и "непрерывная поставка" (continuous integration, delivery)
- базовые понятия ITIL, ITSM или чего-нибудь смежного по процессам сопровождения ПО у заказчика
- минимальные понятия сис.администрирования, или по более современному понятию "DevOps"
- распространение и развёртывание ПО, мониторинг, обновление
- способы повышения доступности (надёжности, отказоустойчивости) ПО
5. Курс по контролю качества ПО.
- основы тестирования ПО, виды и способы тестирования, методики испытаний
- автоматизация тестирования
- основы контроля качества ПО, метрики качества
6. "Эргономика и юзабилити" (в принципе, есть курс ПЧМИ - его и усиливать).
- основы эргономики, психологии и технического дизайна
- основные принципы разработки пользовательского интерфейса, понятие UX
- визуализация информации (в т.ч. "больших данных"), основы инфографики, интерактивные графические системы
- новые современные средства ввода и отображения, использование для повышения продуктивности работы пользователя (очки, 3D-камеры, датчики положения, управление жестами....)
7. Системы управления бизнес-процессами (слышал, что преподаются для менеджеров, но почему-то совсем никак не затрагиваются у программистов).
- назначение, общие принципы, использование в ПО, языки нотаций (BPMN, BPEL)
8. Минимальная юридическая подготовка :)
- основы бух.учёта, "для технаря"
- авторские права, их появление и защита, монетизация ПО (shareware, продажа через online-store, платёжные системы)
- лицензирование платного стороннего ПО при разработке
- открытое и бесплатное ПО, разновидности распространённых в мире лицензий (GPL, MIT, MPL, Eclipse License и др)
- вопросы лицензирования наборов данных (базы знаний, электронные карты, протоколы взаимодействия с оборудованием)
- использование ЭЦП (цифровая подпись), доверенные центры сертификации
- вопросы использования и защиты персональных данных
- другие федеральные законы в части информационных технологий
9. Повышение полезности разрабатываемого ПО, интеграция в развитые "программные экосистемы".
- взаимодействие с различными федеральными информационно-справочными системами: справочники, классификаторы, назначение
- ПО для позиционирования: GPS/глонасс, wifi/3g/4g, RFID/NFC для навигации и позиционирования внутри зданий
- ПО социальных сетей: устройство, API, использование
- взаимодействие с поисковыми системами (Google)
- взаимодействие с картографическими сервисами (google maps, yandex maps, openstreetmaps и др)
- взаимодействие с электронными платёжными системами
Максим Кабанов
руководитель отдела управления проектами подразделения разработки ПО НТЦ ПРОТЕЙ — об инженерах выпускниках факультета СК
Если кандидат с факультета СК, то необходимо понимать его кругозор в целом. Спрашивать, начиная от TDM, что такое и назначение E1, PDH, SDH, ISDN, BRI, PRI, DSS, ОКС№7 (MTP, SCCP, ISUP, MAP, CAMEL, INAP), IN, GSM (BSC, BTS, VLR, HLR, MSC, GMSC), UMTS, потом — IP: SIP, H.323, H.248, TCP, UDP, RADIUS, SNMP, IMS, CSCF, HSS, RTP, G.711, H.264, DPI, LTE, MPLS, WiMax, HSDPA, Ethernet, PON, FTTX, IPTV, RCS, DWDM, OSS/BSS, HTTP, FTP, RIP. Общие вещи, OSI и TCP/IP.
Борис Розенцвайг
заместитель директора НТЦ СевенТест
Мои пожелания к студентам — это желание и способность к самообразованию, коммуникабельность.
Дмитрий Николаев
руководитель отдела контроля качества НТЦ ПРОТЕЙ — об инженерах
Считаю самыми важными следующие качества и способности: аналитический склад ума, способность четко формулировать алгоритмы и реализовывать их на высокоуровневом языке программирования, обучаемость, умение упорядочивать в памяти полученные разнородные знания; понимание англоязычной технической литературы, способность выявлять закономерности в наблюдаемых событиях, самостоятельность; здоровое любопытство, желание разобраться в тонкостях технологий. Хочется видеть у соискателя ориентацию в современных IT-технологиях в широком смысле, что показывает интерес студента к отрасли, желание и умение самообразовываться в данной области, ведь многие сферы Информационных Технологий не освещаются в рамках учебной программы Университета.
Михаил Погодин
заместитель IT-директора НТЦ ПРОТЕЙ — о соискателях инженерах-программистах:
Качества и навыки инженера-программиста: умение читать и желание изучать чужой код; умение писать код понятный другим разработчикам; привычка комментировать собственный код; умение рисовать понятные SDL- и UML-диаграммы; умение внятно документировать архитектуру, функционал и реализацию собственного решения; уверенное знание принципов ООП и практический опыт применения на практике; умение покрывать тестами собственный код (функциональное тестирование, unit тесты); прочитать несколько книг по программированию и хоть что-нибудь усвоить из них; знание операционных систем семейства Windows и Linux на уровне опытного пользователя (работа с консолью); знакомство и навык использования инструментов: системы контроля версий (например, SVN) / BugTracking / Wiki (например, DokuWiki); знание серверного ПО по управлению проектами разработки ПО (например, Redmine).
Виктор Крутченский
руководитель группы ТП NGN НТЦ ПРОТЕЙ
Что касается личных качеств, главное — это заинтересованность в области телекоммуникаций, умение контактировать с людьми, внимательность и логическое мышление. По поводу требований: выпускникам очень не хватает комплексности знаний и понимания того, как это вообще происходит в жизни. То есть некоторые (далеко не все) выпускники разбираются (условно), например, в сигнализации ОКС7, но при этом 1% из них может сказать, как нам физически соединить друг с другом два устройства, работающие по этой сигнализации, с трудом могут связать понятия линков и каналов MTP/ISUP с таймслотами E1.
Также, некоторые знают, какие сообщения есть в SIP, но 2% из них снимали/открывали tcpdump и смотрели как выглядят эти сообщения. Почти нет знаний про то, что такое софтсвитч, что он из себя представляет (хотя сейчас много бесплатных продуктов, тот же самый Asterisk, который можно поставить в лабораторию Бонча и дать студентам на исследование).
Опять же, на мой взгляд, каждый выпускник должен представлять себе как настроить самый простой SIP-телефон или софтфон. Хоть раз поработать в ОС Linux. Это я все к тому, что теория — это, безусловно, хорошо и нужно (при условии внятного изложения материала), но надо стараться ее приближать к телекоммуникационным реалиям. Если кандидат будет обладать вышеописанными знаниями, можно только добавить: welcome!