Статьи

Языки программирования
08.12.2016

 

ПРОСТО О САМОМ СЛОЖНОМ

Выбор языка. Шаг 1. Статистика
09.12.2016

Здесь все довольно просто, это за вас уже сделали. Из десятков похожих сервисов, мы выбрали три с различным подходом к анализу данных. Знакомьтесь, TIOBE, GitHub и Spectrum.Ieee.org.

TIOBE собирает с Google, Yahoo, Amazon, YuoTube, Wikipedia и прочих число поисковых запросов по различным языкам ежемесячно, а так же определяет язык года. Так, например, в 2014 году лидировал JavaScript, а в текущем с отрывом уходит вперед Java. Полезно, согласитесь. Недостатком такой статистики является:

  • Сервис не оценивает язык по количеству и качеству кода;
  • Авторы проекта требуют, чтобы предмет исследования в обязательном порядке имел статью в Wikipedia, подтверждающую статус технологии (отпадает Ruby on Rails, ASP);
  • Рассматриваемый язык должен соответствовать Тьюринг-полноте – показатель способности к реализации любой вычислительной функции (исключаем XML, HTML и базовый SQL).

Вот вам десятка лидеров октябрьского хит-парада запросов:

  1. Java
  2. C
  3. C++
  4. C#
  5. Python
  6. PHP
  7. .NET
  8. JavaScript
  9. Perl
  10. Ruby

Но запросами все не кончается, ведь даже у языков узкоспециализированных есть поклонники, и если их что-то взволнует, они целый бунт в поисковиках устроят. Поэтому идем дальше.

GitHub – крупнейший, пожалуй, сервис для предоставления хостинга проектам в сфере информационных технологий. Иначе говоря, GitHub - это площадка для размещения кода, в открытом доступе в том числе. Тут уже более менее все понятно, ведь представленная десятка - это не число запрошенных страниц, а число проектов, написанных на том или ином языке. Это уже ощутимые данные, с которыми нельзя поспорить. ТОП-10 языков программирования выглядит так:

  1. JavaScript
  2. Java
  3. Python
  4. CSS
  5. PHP
  6. Ruby
  7. C++
  8. C
  9. Shell
  10. C#

Эту таблицу подтвердит практически любая современная компания, которой по роду деятельности приходится иметь в штате много разработчиков.

Ieee Spectrum – ежемесячный журнал для инженеров по всему миру. Он создан для обсуждения проблем и достижений современных технологий. Источник утверждает, что языки – это инструменты, и что может применяться в одном месте, совершенно не может в другом. Статистика основана на 12 показателях из 10 источников. Главным показателем является конвертация языка в предложение о найме.

  1. Java
  2. C
  3. C++
  4. Python
  5. C#
  6. R
  7. PHP
  8. JavaScript
  9. Ruby
  10. Matlab

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

Поэтому так важно делать выбор, изучив сразу несколько уважаемых источников. Мы же видим для себя, что Java, семейство C, JavaScript и Python уверенно держат позиции, поэтому можете смело выбирать один из них. А если вам понравится язык Java, о преимуществах которого можно почитать в другой главе, мы готовы вас обучить ему за полгода. Удачного вам выбора, упорства и успехов!

Выбор языка. Шаг 2. Вакансии
09.12.2016

Статистика нам подсказала, что в пятерку самых используемых языков программирования входят:

  • Java;
  • JavaScript;
  • Линейка С;
  • Python;
  • PHP.

Подтвердятся для эти данные, когда мы рассмотрим горячие вакансии белорусских компаний?

Найдите три-четыре самых популярных ресурса, на которых размещаются резюме и вакансии и перейдите в раздел «программирование», или «информационные технологии». Для белорусов такими сайтами являются DEV.BY, JOBS.TUT.BY, IT-JOB.BY и EPAM.BY, it-гигант в Республике Беларусь. Если вы не из наших краев, ищите по своему региону. Что имеем?

Данные с Dev.by:

screenshot_7

Из первого источника можно сделать вывод, что растет актуальность специалистов, занимающихся веб-программированием. JavaScript отвечает за то, как будут выглядеть страницы сайта. И не удивительно, ведь бизнес переходит из офлайна в онлайн.  

Данные с Jobs.tut.by. Еще до входа в раздел «программирование» можно увидеть, что предложений компаний, готовых принять вас с пылу с жару довольно много – 71 вакансия (по состоянию на 25 октября 2015 года).

screenshot_8

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

  1. JavaScript;
  2. .NET;
  3. Java;
  4. PHP;
  5. HTML.


Следующие данные представлены с ресурса it-job.by. Как видно на рисунке, стране нужны разработчики Java, PHP, операционных систем, которые используют линейку С, и .NET. Последний применяется для написания распределенных многоуровневых приложений, например, программ клиента, задействующих как Windows, так и Web-интерфейсы.

screenshot_9

Напоследок у нас крупнейшая ауторсинговая компания EPAM Systems:

screenshot_10

ЭПАМ крупная организация с большимии долгосрочными проектами, поэтому разработчики на Java, JavaScript и .Net особенно в почете. На данную подборку можно посмотреть и с такой стороны: каким бы языком вы не увлекались, вы можете попытать счастье в EPAM Systems, удачно пройдя отбор.

Работа в офисе компании для разработчика имеет свои преимущества. В некоторых объялениях о найме вы найдете обязательный пункт “работа в крупной компании со штатом не менее…”. Опыт работы в коллективе, опыт делегирования, ответственности, руководства командой и своим локальным проектом, возможность самостоятельно изучить рабочие процессы - все это дает офис. Но не стоит забывать о замкнутом круге “нет работы - нет опыта, нет опыта - нет работы”. А опыт нарабатывается где? На фрилансе. Поэтому советуем проанализировать и биржи удаленной работы. Среди таковых:

  • Freelansim.ru
  • Moikrug.ru
  • Upwork.com (слияние Elance и Odesk);
  • Fl.ru
  • Kadroff.ru

Помните диаграмму по GitHub из предыдущего шага?

screenshot_11

Как видно, язык может вырасти на 4 пункта за год, но потом теряет актуальность. Ищите язык с протенциалом и твердой позицией на рынке и останетесь довольны.

Уже сделали свой выбор? Еще нет? Тогда прочтите следующий ШАГ и удачного поиска!

Выбор языка. Шаг 3. Общение
09.12.2016

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

  1. Форумы.
  2. Митапы.
  3. Хакатоны.
  4. Сообщества в соц. сетях.

Форумы - это настоящие ларцы с сокровищами. Хотите совет по применению технологии - пожалуйста. Уверены, что вам не хватает знаний по безопасной работе с заказчиком - вот вам инструкция. Ищете наставника или затрудняетесь в выборе языка программирования - только нажмите кнопку. От вас требуется лишь неукоснительное соблюдение правил площадки, иначе вам светит пожизненный бан. Среди русскоязычных форумов достаточно популярны Habrahabr.ru, позиционирующий себя как сервис интересных публикаций в технической сфере, однако, на самом деле, это форум, биржа фриланса, масштабный вопросник и кадровое агентство в одном лице; а также CyberForum.ru, Javatalks.ru и Programmersforum.ru. К счастью, вы не ограничены в ресурсах. К вам в руки попадают сразу все секреты и нюансы мира компьютерных технологий.

Митапы (meetups) - встречи профессионалов для обсуждения конкретного вопроса. Такой формат больше напоминает лекции в универе, но намного круче и полезнее. Лекторов-практиков в наших университетах можно сосчитать на пальцах, а преподаваемые технологии хорошо, если прошлого десятилетия. Все это приводит к тому, что теория, которую выучил студент может отставать лет на 20 от реальности. Митапы, как правило, проводятся по конкретному языку программирования или технологии. В Минске еженедельно, если не чаще, собираются вместе разработчики Python (Python meetup), Java (Java Professionals BY Meetup, JAva day meetup), UX (Дизайн кUXня), .NET (.NET Meetup), JavaScript (4front meetup) и прочие. Когда сообщество готово делиться опытом, когда компания хочет поощрить стремление ее сотрудников к повышению профессионализма, когда отдельные представители разработки открывают свой бизнес и желают передать опыт молодым, тогда появляются митапы. Ярким примером патриотизма и комфорта передачи опыта юному поколению является ежегодная Конференция в Солигорске <Solit>.

Хакатоны. Если митапы - встречи практиков для передачи опыта посредством докладов, то хакатоны - встречи практиков для решения конкретных проблем в короткие сроки с минимально функционирующим продуктом в качестве результата. Цель тусовки - популяризация разработки, общение экспертов с молодыми специалистами, мозговой штурм, а иногда и поиск работы. Не стоит сбрасывать со счетов и то, что цель хакатона может быть и “захантить разработчика”. Компания в течение двух дней просмотрела порядка 15 проектов и предложила лучшим из них программистам рабочие места в своем московском офисе. Каким бы малым багажом вы не обладали сейчас, вам легко найдутся задачи в одной из команд. За 2 суток вы получите больше опыта, чем за несколько месяцев самостоятельной работы. Последними яркими события стали “ТЕЛЕКОМ ИДЕЯ BY MTS 2015”, Garage48, FinTech Minsk, huck4good, Qiwi Universe.

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

Выбор сегодня огромен. Эгоистичность уступает взаимопомощи, поэтому не робейте и задавайте вопросы. Задавайте их всегда тем, кто лучше вас, кто умнее. Иногда правильные вопросы порождают творческие союзы и быстрый рост. Вам осталось только спросить!

Выбор языка. Шаг 4. Области применения.
09.12.2016

Как правило, при поступлении в университеты мало кто знает, чем в будущем он хочет заниматься, что создавать. Это знание приходит в процессе. В нашей стране уже норма, если студент 3-го курса пишет свои приложения и работает, на 4 курсе game-дизайнер уже выкладывает приложения в Google Play и зарабатывает первую тысячу долларов. А тем, у кого нет лишних пяти лет, мы предлагает ознакомиться с назначением языков, а так же рассмотреть такой фактор, как кроссплатформенность.

Большая часть программного обеспечения так или иначе касается следующих областей разработки:

  • Desktop-приложения:
  • требуют установки на ПК.
  • Web-приложения:
  • без установки на ПК, данные доступны в сети (сайты и онлайн-сервисы).
  • Мобильные приложения.
  • Игры:
  • мобильные и браузерные.
  • Встроенные системы (компьютеры для управления устройствами).

Кроссплатформенность обеспечивает выполнение программы более, чем на одной платформе (Windows, Linux, iOs, Android). Она существует на уровне библиотек, компиляции и интерпретатора. По-настоящему кроссплатформенным языком является тот, что имеет и компилятор, и интерпретатор для каждой из представленных машин.

Идем дальше. Применение.

Java

  1. Разработка прикладных программ для компьютеров (application).
  2. Разработка мобильных приложений (midlet)
  3. Web-приложения.
  4. Создание скриптов для тестирования ПО.

<< кроссплатформенный >>

PHP

  1. Разработка динамических web-приложений:

- Создание скриптов для web-серверов;

- Создание оконных приложений.

  1. Создание скриптов для командной строки.

<< кроссплатформенный >>

Pytnon

  1. Разработка web-приложений.
  2. Создание скриптов для тестирования ПО.
  3. Создание скриптов для научного моделирования.

<< кроссплатформенный >>

JavaScript

  1. Создание скриптов для страниц web-приложений (вставки в HTML-код).
  2. Web-приложения (Node.JS)

<< кроссплатформенный >>

C/С++/C#

  1. C и С++ - разработка всего, что только можно за счет быстродействия, но преимущество отдается разработке операционных систем и драйверам.
  2. С# - web-службы, клиент-серверные приложения, программы для Windows.

<< кроссплатформенный >>

Ruby

  1. Разработка web-приложений.
  2. Написание скриптов для интерфейсов.

<< кроссплатформенный >>

Как видите, большинство языков программирования, которые попали в ТОП-10 востребованных, так или иначе кроссплатформенные. Достигается это всевозможными фреймворками.

Framework - набор библиотек (подпрограмм), разработанный для упрощения или совершенствования процесса разработки. Фреймворки увеличивают функционал языка программирования и позволяют значительно сократить объем кода.

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

Выбор языка. Шаг 5. Нравится ли вам код?
09.12.2016

Пусть вас не смущает этот вопрос. Помните, мы говорили, что простых и сложных языков программирования не бывает, что есть только те, которые лучше или хуже подходят для выполнения поставленной задачи? Язык программирования - это не только код. Мы выбираем язык по тому, какие продукты хотим создавать, какие вакансии заполонили рынок, что учит наше окружение. А про код все забывают. Программист тот же художник. Одни пишут, вдохновляясь классиками, другие продают брызги на полотнах за несколько тысяч евро. От того, каким получится код вашей программы, зависит, поймет ли его тот, кто приступит к проекту после вас.

Красивый код - это код понятный и легко модифицируемый.

Благодаря появлению объектно-ориентированных языков понимание кода перестало быть проблемой. Создание объектов и классов основано на наших абстрактных представлениях об окружающем мире и вещах. Поэтому последним шагом в выборе языка программирования является анализ своих ощущений при взгляде на готовую программу.

<<Вы задаете не те вопросы!>>

Спрашивать опытного разработчика, какой самый красивый код, не совсем разумно. Для него красота выражена:

  1. В краткости.
  2. В читабельности.
  3. В работоспособности..
  4. В гибкости (предусмотрены точки роста).
  5. В изобретательности автора.

Мы подобрали для вас код самой первой программы, которая запускается на каждой машине в самом начале пути любого разработчика “Hello World!”.

C:

screenshot_12

С++:

screenshot_13

Java:

screenshot_14

JavaScript:

screenshot_15

PHP:

screenshot_16

И - вы сейчас сильно удивитесь, Hello World на Python:

screenshot_17

JavaScript - язык программирования, который чаще всего используется для разработки интерфейсов web-приложений, поэтому на первый взгляд он выглядит страшновато. Но отбросьте html и останетсz:

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

<<Ты мне не нравишься!>>

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

<<Ну не за деньги же мы тут все работаем!>>

Программист обычно любит код, который пишет. Отсутствие любви к своему делу через некоторое время приводит к депрессии. В среде разработчиков вам скажут, что выбор языка у программиста сравним с выбором женщины: кто-то любит брюнеток, кто-то блондинок, третьи - рыженьких, но единым остается одно - отношение. Чтобы вы ни выбрали, ищите то, что станет вам дорого. Успехов вам на новом поприще!

Программирование для детей
09.12.2016

Программирование помогает лучше думать, расширяет кругозор и создает аналитическое мышление, которое понадобится в любой ситуации и профессиональной области.

Написание кодов для программ весьма популярно не только среди взрослых, но и среди детей. Множество детей во всем мире принимают участие в мероприятии «Час кода», которое помогает развеять миф о сложности программирования, показать что все могут ему научиться, позволяет стать активным пользователей информационных технологий, и попробовать свои силы в создании программ и игр.

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

  • Lightbot – игра, доступная для IOS и Android.  Суть игры в том, чтобы, подчиняясь командам,  маленький робот зажег лампочки в нужных местах. Перед ребенком стоит задача спроектировать путь робота используя простые команды. Малыш учится составлять алгоритмы и планировать действия. Простая игра, но затягивает даже взрослого!

screenshot_18

  • Kodable – игра, доступная для IOS. Для того, чтобы в нее играть, даже не нужно уметь читать, все подсказки представлены в виде картинок, по этому она может быть освоена маленькими детьми. В игре необходимо пройти лабиринт и составить программы с помощью указания последовательности действий. Игрушка наглядно демонстрирует, что учиться программированию можно раньше, чем читать.

screenshot_19

  • Code.org -   сайт, созданный организацией международного движения «Час программирования», где собраны обучающие курсы для всех возрастов и игры, позволяющие практиковать полученные навыки программирования. При прохождении красочных уровней можно научиться создавать собственные небольшие программы. По душе придется не только детишкам, но и их родителям.

screenshot_20

  • Machineers – игрушка для детей 8-14 лет, в стиле приключения, где игроки должны починить сломанные устройства при помощи принципов программирования и интерфейса drag-and-drop (способ управления элементами при помощи «мыши» или сенсорного экрана). В игре не нужно писать коды, но она помогает развить логическое мышление и способность создавать процессы. Игра доступна для  Windows, OSX, IOS, Android.

screenshot_21

  • Кроме игр, для детского написания кодов существуют и более серьезные платформы. Например, весьма популярная среда для объектно-ориентированного программирования –  Scratch, которая предназначена для детей от семи лет и старше. В Скретч можно создавать свои мультфильмы, интерактивные истории, игры, общаться в сообществах с другими детьми.

screenshot_22

Программировать детишек на Scratch обучают в клубе Имагуру (Imaguru) – это бизнес-клуб, где встречаются в неформальной обстановке профессионалы в различных областях и обмениваются своими знаниями и опытом.

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

А вам, родители, разве не хотелось бы чтоб ваш ребенок вместо пропадания в играх и социальных сетях, самостоятельно писал свои игрушки и программки?

Хакатоны: Зачем это?
09.12.2016

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

Как правило, у такого мероприятия есть определенная тематика – разработка программного обеспечения для банков, разработка на Ruby, GameDev и прочее. А вот результатом круглосуточных усилия может быть как прототип, как и полноценно функционирующий продукт.

ЗАЧЕМ НУЖНЫ ХАКАТОНЫ

Сейчас мы рассмотрим две стороны их полезности – для разработчика и для организатора.

Разработчику:

  • Обмен опытом.

На хакатоне можно встретить всех от тестировщиков до продюсеров (которые пишут спецификации к продуктам), а значит такая встреча будет полна различного рода опыта. Будьте уверены, там никто не откажет в совете чайнику и не покрутит пальцем у виска за вашу ошибку. Напротив, все присутствующие прекрасно понимают, как тяжело вам придется в будущем и на какую долгую извилистую дорожку вы стати.

  • Знакомства.

Не редкость, когда юнцы с небольшим опытом, но высоким потенциалом находили на хакатоне первую работу. Иногда это неприкрыто напоминает кражу умов, но если вам мало платят в вашем городе (стране), а в Москве вам предлагают золотые горы и комфортабельный офис, то почему бы и нет, правда?

  • Креативная лаборатория.

Как обстоит дело в наших крупных компаниях: отдел разработки, отдел тестирования, отдел технической поддержки, отдел аналитики и т.д. Зачастую эти ребята за всю карьеру друг друга в глаза не видели, а если видели, то испытывали глубочайшую ненависть за баги, срывы сроков и прочее. Где тут пообщаться с коллегами? Хакатон позволяет вам встретиться со специалистами из разных областей, позаимствовать технологии, поискать людей в свой собственный проект спокойно, быстро и даже приятно.

  • Практика.

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

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

Поэтому будьте смелее, собирайте команду единомышленников, создавайте уникальный продукт и добивайтесь результата, пока это не сделал за вас кто-нибудь другой.

Должности в разработке
09.12.2016

Работой над проектами в сфере информационных технологий всегда занимается целая группа специалистов и у каждого есть своя часть работы. Попробуем разобраться в иерархии IT специалистов.

Junior Software Engineer (младший разработчик) – как правило, это вчерашний выпускник, который только начинает свою карьеру в IT.

Требования к Junior SE:

  • Высшее ИТ образование;
  • Минимальные знания требуемого языка (среды) программирования;
  • Технический английский.

Обязанности:

  • Участие в качестве разработчика в создании программ.

Зарплата от $500.

Следующая ступень в карьерной лестнице –  Middle Software Engineer (разработчик среднего уровня).

Требования:

  • Опыт работы на похожей позиции от 2-х лет;
  • Уверенные знания требуемого языка (среды) программирования;
  • Хорошие навыки коммуникации;
  • Английский среднего уровня и выше.

Обязанности:

  • Разработка программного кода в требуемой среде программирования;
  • Коммуникация с рабочей группой и заказчиком.

Зарплата около $1000.

Senior Software Engineer  -  старший разработчик.

Требования к кандидату:

  • Опыт разработке в требуемой среде (платформе) не менее 3-х лет;
  • Глубокое знание требуемого языка ( среды) программирования;
  • Опыт работы с системами управления базами данных;
  • Опыт оптимизации производительности приложения и БД;
  • Английский уровня  advance.

Обязанности:

  • Работа с командой проекта;
  • Принятие решений в рабочих вопросах и задачах в ходе проекта;
  • Написание кода;
  • Составление отчета;
  • Общение с заказчиком.

Зарплата от $2000.

В приведенных  вакансиях всегда указывается необходимый язык программирования, среда или платформа, знаниями о которых должны обладать соискатели. Например, Senior C++ Software Engeneer, Junior PHP Software Engeneer, Middle Java SE. Таким образом, по названию должности можно увидеть основные требования к кандидату.

Над IT проектами кроме разработчиков также работают  и другие специалисты, например тестировщики программного обеспечения и специалиста по обеспечению качества ПО. Различия между ними небольшие, но все же есть. Задача тестировщика состоит в проверки уже готового продукта на соответствие требований по техническому заданию  и на  наличие ошибок, а также составить отчет проведенной проверки. В обязанности Quality Assurance-инженера помимо тестирования, также входит планирование тестов, анализ результатов, и поиск возможностей улучшить процесс разработки продукта, чтобы предотвратить ошибки.

Quality Assurance Specialist - специалист по тестированию и проверки качества ПО. Они также могут быть уровней  Junior, Middle, Senior.

Общие требования:

  • Опыт в тестировании  различной сложности систем;
  • Высшее техническое образование IT;
  • Начальные знание программирования;
  • Знание основ СУБД;
  • Знание инструментов разработки тестирования;
  • Английский язык уровня  Intermediate и выше;
  • Опыт использования различных API.

Обязанности:

  • Совместная работа с проектными командами QA и разработки;
  • Составление и анализ тест-планов;
  • Ведение документации и отчетности;
  • Управление небольшой группой тестировщиков;
  • Самостоятельная работа по отдельным направлениям тестирования, таких как составление планов, оценка сроков, контроль результатов, отчетность.

Зарплата от $500  и выше, в зависимости от уровня специалиста.

В работе над проектом могут участвовать также технические писатели (Technical Authors или Technical Writers). В их обязанности входит создание различной документации, как для внутреннего пользования, так и для заказчиков и конечных пользовантелей продукта (различные мануалы, справочники и так далее). Технический писатель должен уметь грамотно писать и разбираться в технической части.

Также существуют и руководящие должности в IT: Software Architect (архитектор программного обеспечения), Project Manager (менеджер проекта), Tech Lead (технический руководитель), Team Lead (руководитель группы). Все одни выполняют руководящие роли в своих областях: управляют командой сотрудников, техническими процессами, координирую весь проект от начала до конца, принимают ключевые решения, планируют весть процесс разработки, взаимодействуют  с заказчиком и сотрудниками.

Самой высокой должностью в IT компании является технический директор (Chief Technology Officer или Chief Technical Officer), который отвечает полностью за оптимизацию производства, координирует работу руководителей отдельных рабочих групп, отвечает за разработку, внедрение и поддержку различных новых продуктов внутри компании. Как и все топ-менеджеры, CTO несет ответственность на за отдельный проект, а за весь технический отдел в целом.

«Выбери себе занятие по душе, и тебе не придется работать ни одного дня!»  - этот афоризм Конфуция как нельзя лучше подходит к профессии программиста. Если написание кода доставляет удовольствие, то и работа будет в радость и приносить удовлетворение!

Как стать программистом?
22.12.2016

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

Что отличает человека, который стал разработчиком, от человека, который им не станет?

Топ-10 языков программирования 2015
08.12.2016

 

Нет языков простых, или сложных. Есть только те, что более или менее подходят под выполнение конкретной задачи. Поэтому перестаньте расспрашивать своих друзей и коллег, какой язык вам учить «чтобы получилось», потому что в итоге получается все. Но то ли, что нужно вам? Верный путь – определение того, чем вы хотите заниматься, какие продукты вы желаете в будущем создавать, в какой компании работать, а также каким специалистом вы хотите стать. Когда определитесь, будущее станет намного яснее, а изучение любого языка не покажется сложно задачей, потому вы будете знать, зачем вам это все.

Какой язык выбрать
09.12.2016

 

В этой статье вас ожидают следующие 5 шагов на пути к карьере разработчика.

Задать вопрос