Программист java работа чем занимаются. Отборные вакансии для Java программистов. Обучение на программиста Java

Зарплата : от 2 000 до 4 000 USD до вычета НДФЛ

Город : Самара

Опыт : 3–6 лет

Занятость

Made Simple Ventures ищет Java программиста в команду по разработке платформы смс-маркетинга. Платформа коммерчески успешна и активно развивается, и что замечательно – это наш собственный продукт: все решения принимаются оперативно внутри компании.

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

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

Требования:

  • Высшее техническое образование и опыт коммерческой разработки на Java от трех лет;
  • Уверенное владение Java SE, знание Spring Framework;
  • Коммерческий опыт работы с noSQL, предпочтительно MongoDB;
  • Умение работать с Git, Maven, Unix консолью;
  • Плюсом будет опыт с NodeJS, Meteor и front-end разработки;
  • Английский требуется на уровне чтения технической документации, предпочтительно свободное владение.

Условия:

  • Удаленная работа на полный рабочий день;
  • График работы оговаривается индивидуально. Часть команды работает в часовом поясе Нью Йорка (-5 EST), поэтому необходима доступность в вечерние часы по московскому времени;
  • Размер оплаты по результатам собеседования.

Senior Java разработчик

Зарплата

Город : Москва

Опыт : более 6 лет

Занятость : Полная занятость, удаленная работа

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

  • Разработка приложения, участие во всём цикле разработки. Приложение имеет доступ к клиентским сервисам, базам данных (JDBC);
  • Основной пул задач на Java;
  • Оптимизация и масштабирование архитектуры по RPS. Бывают задачи на сложную логику;
  • Могут быть отдельные задачи на Node.js и других, используемых в проекте, языках.

Требования:

  • Опыт разработки на java от 5 лет;
  • Отличные базовые знания в области Computer Science (алгоритмы, структуры данных, протоколы, модель OSI и вот это вот все);
  • Опыт разработки высоконагруженных веб-приложений (1k+ rps), умение работать с многопоточностью;
  • Отличное знание Java /JEE, фреймворков, библиотек, протоколов, веб-сокетов;
  • Здорово, если вы разбираетесь в таких вещах как: Class loading, Memory Management, Transaction management, Java Concurrent;
  • Понимание принципов протоколов для передачи сообщений между компонентами системы (AMQP, JMS, etc);
  • Опыт работы с асинхронными фреймворками;
  • Опыт работы с базами (100-200Gb+), понимание механизмов репликации, блокировок, сложных запросов, SQL и ORM (JPA2, Hibernate), JDBC;
  • Уверенный рабочий уровень английского языка (устного и письменного);
  • Опыт удалённой работы, организации своего рабочего времени;
  • Открытость и интерес к новым технологиям (в проекте может быть возможность решить задачи с помощью Scala, Closure, etc..);

Условия:

  • Удалённая fulltime работа, московский тайминг — коммуникация голосом около 19, несколько раз в неделю;
  • Командировки в США (Купертино), примерно на 2 недели каждые 3 месяца — важно наличие визы или отсутствие препятствий для оформления;
  • Уровень дохода 220-300 тыс.руб. (готовы обсуждать выше);
  • Оформление — через ИП (налоги оплачиваются самостоятельно), оплата отпуска — 20 рабочих дней;
  • Компенсация за покупку рабочего компьютера;
  • При желании возможна релокация в Сингапур (компания берёт на себя все организационные вопросы).

Ведущий Java-разработчик

Зарплата : от 250 000 до 350 000 руб. до вычета НДФЛ

Город : Москва

Опыт : 1–3 года

Занятость

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

  • Разработка и сопровождение высоконагруженных web и интеграционных решений;
  • Анализ кода и оптимизация алгоритмов;
  • Участие во внедрении современных технологий и методов ведения разработки;
  • Постановка задач разработчикам и проведение code-review.

Требования:

  • Практический опыт разработки серверной логики на Java от 3 лет;
  • Знание Spring;
  • Знание JPA (Hibernate);
  • Опыт работы с любой системой контроля версий;
  • Протоколы и форматы: HTTP/HTTPS, JSON, XML;
  • Понимание принципов работы реляционных баз данных, знание SQL;
  • Опыт разработки многопоточных приложений;
  • Навыки отладки и профилирования кода;
  • Английский: чтение технической литературы;
  • Ответственность, дисциплинированность, умение согласованно работать в команде;
  • Желателен опыт применения или готовность к освоению: Технологий ESB, принципов разработки высоконагруженных отказоустойчивых систем, паттернов разработки ПО.

Условия:

  • Полностью официальные выплаты (зарплата + бонусы);
  • Дополнительное вознаграждение за результат (KPI);
  • ДМС (после испытательного срока);
  • Обучение, повышение квалификации, сертификация;
  • Команда единомышленников, увлеченных своим делом;
  • Уютный, эргономичный и креативный офис;
  • Корпоративная спортивная лига, поддерживающая здоровый образ жизни.

Senior Java —разработчик

Зарплата : от 200 000 до 300 000 руб. на руки

Город : Санкт-Петербург

Опыт : более 6 лет

Занятость : Полная занятость, полный день

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

  • Участие в развитии архитектуры проекта;
  • Разработка модулей системы на языке Java;
  • Разработка unit- и интеграционных тестов;
  • Написание и поддержка в актуальном состоянии документации на разработанные модули;
  • Участие в оценке и распределении задач в команде;
  • Участие в выборе технических решений;
  • Участие в Code review.

Требования :

  • Минимум 5 лет опыта работы с Java -технологиями;
  • Java core;
  • Cassandra, elasticsearch /lucene, postgresql, любой распределенный cache;
  • Spring framework;
  • JSon, REST;
  • Владение на профессиональном уровне любыми другими языками будет плюсом;
  • Знание основных сетевых технологий и стандартов;
  • Знание паттернов разработки;
  • Знание какого-либо SQL сервера;

Условия:

  • З/п от 200 до 300 000 руб. по результатам собеседования
  • Оформление по ТК РФ
  • Офис на ПС, ул. Чапаева (ст.м. «Горьковская»)

Java разработчик на аналитическую платформу

Зарплата : от 220 000 до 250 000 руб. на руки

Город : Москва

Опыт : 3–6 лет

Занятость : Полная занятость, полный день

Требования:

  • высшее образование;
  • опыт работы от 3-х лет;
  • знание Java core и представление, о чем 17-ая глава JLS;
  • знакомство с классическими алгоритмами и структурами данных;
  • осознавание, что только он ответственен за поставленную задачу и готов её сопровождать от требований заказчика до рабочего прототипа;
  • понимание того, как оптимизировать SQL запросы.

О проекте:

  • аналитическая платформа помогает собрать и поддерживать эталонную клиентскую базу для маркетинга, продаж, аналитики и отчетности.

Задачи платформы:

  • рассказать бизнесу о его клиентах;
  • исправить ошибки в клиентских данных;
  • найти идентичных клиентов в различных базах и объединить информацию.

Как работает компания:

  • работает по git-flow, через pull-requests на Bitbucket;
  • каждый pull-request проходит код-ревью и сборку c тестирование на TeamCity;
  • доступ к production отсутствует, что накладывает на нас обязанность максимально специфицировать новый код тестами;
  • по результатам итерации проводятся ретроспективы, выявляющие узкие места.

Условия:

  • место работы: г. Москва, комфортный офис в районе метро Кутузовская и МЦК;
  • график работы: пятидневка;
  • работа в команде 10 человек – аналитиков, разработчиков , внедренцев;
  • заработная плата с пересмотром раз в год;
  • любые курсы и конференции по специальности;
  • оплата труда: 220-250,0 тыс.руб.

Senior Java Developer (DataGrip)

Зарплата : от 200 000 руб. до вычета НДФЛ

Город : Санкт-Петербург

Опыт : 3–6 лет

Занятость : Полная занятость, полный день

DataGrip - среда разработки для SQL и баз данных.

Требования:

  • Знание продуктов JetBrains и желание их улучшить;
  • Опыт более 3 лет программирования на Java
  • Любовь к программированию;
  • Умение аргументированно отстаивать свою позицию;
  • Написание понятного код и его поддержка;
  • Опыт работы с базами данных и языками запросов;
  • Опыт участия в проектах с открытым исходным кодом;
  • Знание парадигм программирования.

Чем работа в DataGrip отличается от работы над другими IDE в JetBrains:

  • У DataGrip более пятидесяти конкурентов: все они либо слишком узкоспециальные, либо умеют только базовые вещи, либо стоят очень дорого. SQL существует уже много лет, а среды разработки высшего класса для баз данных так и не создано: в мире на такой инструмент существует сильный запрос. Делать DataGrip - это предлагать SQL-разработчикам совершенно новый опыт написания запросов и работы с данными;
  • В DataGrip нет задачи поддерживать ежегодно выпускаемые фреймворки, и мы добавляем в IDE, в основном, архитектурные новшества. Например, нужно поддержать NoSQL базы данных, расширить возможности диаграмм, сделать дебаггер хранимых процедур, генератор данных или то, до чего мы сами ещё не додумались;
  • Грамматика SQL сложнее, чем у других языков, которые поддерживают DataGrip. Работа с парсером для SQL ставит перед разработчиком необычные задачи;
  • DataGrip - одна из самых маленьких команд в JetBrains и сохраняем бодрый дух стартапа. Много общения, мало формальностей. Частые поездки на конференции, поэтому каждый разработчик , если ему это интересно, может два-три раза в год ездить в США и Европу и рассказывать о DataGrip коллегам;
  • То, что делает DataGrip, попадает почти во все другие IDE в JetBrains: IntelliJ IDEA, PhpStorm, PyCharm, GoLand, RubyMine и Rider.

Как устроено внутри:

  • Исходный код - на Java , Groovy и Kotlin;
  • Для организации командной работы используются: Upsource для ревью кода, TeamCity для автоматического запуска тестов и сборки продуктов, YouTrack для учёта багов и фич;
  • С пользователями общение напрямую.

Что ещё:

  • Страховка для вас, жены/мужа и детей;
  • Свежие и полезные завтраки и обеды в офисе;
  • Уютный и демократичный офис в самом центре;
  • Бесплатные уроки английского и немецкого.

Java Developer

Зарплата : до 180 000 руб. на руки

Город : Москва

Опыт : 3–6 лет

Занятость : Полная занятость, полный день

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

  • Анализ требований, предложение способов реализации;
  • Проработка архитектуры решения и исследование узких мест в текущей реализации;
  • Разработка нового функционала;
  • Поддержка существующего функционала;
  • Анализ и исправление ошибок;
  • Написание юнит, интеграционных тестов.

Требования:

  • Опыт работы c Java не менее 3 лет;
  • Высшее техническое образование;
  • Уверенное знание Java (предпочтительно Java 8) — Core/IO/Collections/Concurrency/JMM/GC;
  • Отличные знания: Spring/Spring Boot, Hibernate;
  • Опыт работы с Camel, Hazelcast, Guava, PostgreSQL;
  • Желательно представление о Ansible, Jenkins, Gradle.

Условия:

  • Работа в активно развивающейся международной компании, в коллективе молодых, целеустремленных и талантливых людей;
  • Знание современных трендов в проектировании архитектуры высоконагруженных распределенных сервисов;
  • Постоянное обучение;
  • Стабильная высокая заработная плата;
  • Комфортабельный и уютный офис на метро Павелецкая;
  • Оформление трудовых отношений в соответствии с ТК РФ;
  • ДМС и фитнес.

Java Developer (Junior/Middlle)

Зарплата : от 60 000 до 150 000 руб. до вычета НДФЛ

Город : Москва

Опыт : 1–3 года

Занятость : Полная занятость, полный день

В шведскую ИТ — компанию, создающей решения для крупных финансовых структур, требуется «Java Developer ».

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

  • Разработка и поддержка больших бизнес приложений;
  • Взаимодействие с группами аналитики и тестирования;
  • Участие в разработке и проектировании архитектурных решений.

Требования:

  • Высшее образование (информатика/ математика будет преимуществом). Рассматриваем в том числе выпускников технических ВУЗов (в т.ч. студентов последних курсов);
  • Опыт реализации проектов на Java (возможно собственных или в рамках обучения, если нет профессионального опыта).

Будет плюсом:

  • Знание : Spring; JavaEE (EJB 3, JPA, JSF, JMS, Webservices, REST); HTML, CSS, JavaScript; SQL; XSL; Git.
  • Понимание : JBOSS/WebSphere/WebLogic; Camel, OSGi; Hibernate.

Условия:

  • Работа в российском филиале шведской компании, оформление по ТК РФ;
  • Белая заработная плата (в зависимости от опыта кандидата);
  • Оплата обедов в офисе (денежная компенсация около 10 т.р. в месяц);
  • Офис м. Динамо (15 мин пешком или 5 мин бесплатным корпоративным транспортом);
  • Есть офис компании в г. Зеленоград (по желанию кандидата возможна работа в этом офисе);
  • График работы в офисе с 10:00 до 19:00.

Junior Java разработчик

Зарплата : от 50 000 до 70 000 руб. на руки

Город : Москва

Опыт : не требуется

Занятость : Полная занятость, гибкий график

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

  • Разработка и развитие публичного и внутреннего API (стек технологий: Java 8, EJB, Hibernate, WildFly, Hazelcast, PostgreSQL);
  • Улучшение существующих функций МоегоСклада: интеграция с внешними системами, кассовыми решениями, развитие внутреннего сервиса биллинга;
  • Доработка клиентской части веб-приложения (пользовательский интерфейс и бизнес-логика) при помощи GWT.

Требования:

  • Выпускник или студент старших курсов технического вуза;
  • Уверенно знаете алгоритмы и структуры данных;
  • Имеете представление о паттернах проектирования и основах ООП;
  • Имеете опыт разработки на Java в учебных или домашних проектах;
  • Знакомы с Java Core (collections, utils, exceptions, concurrency как плюс);
  • Знаете SQL на уровне написания простых запросов;
  • Готовы работать от 30 часов в неделю.

Вы приобретете навыки:

  • Уделять небольшое время анализу задачи перед ее выполнением;
  • Писать грамотные и полезные unit-тесты;
  • Работать в команде, делать ревью кода;
  • Проявлять самостоятельность в постановке и оценке задач, а также оценке эффективности решений.

Условия:

  • Оформление по ТК РФ с первого дня;
  • Белая зарплата 50-70 тысяч рублей (после налогов, на руки);
  • Ультимативно гибкое начало рабочего дня;
  • Комфортный офис в пяти минутах от метро Технопарк;
  • Фирменный мерч (футболки, толстовки, кружки с собаками, блокноты и т.д.);
  • Компенсация оплаты обедов;
  • Компенсация оплаты обучения по профилю;
  • ДМС после окончания испытательного срока.

Программист-стажер Java

Зарплата : до 30 000 руб. на руки

Город : Москва

Опыт : не требуется

Занятость : Стажировка, гибкий график

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

  • Участие в развитии интересных и амбициозных проектов в области fintech;
  • Работа в распределенной команде, взаимодействие с внешними разработчиками, взаимодействие с техническими специалистами заказчика;
  • Разработка проектов с нуля — от архитектуры до документации по сопровождению;
  • Развитие существующих проектов, техническое сопровождение, рефакторинг и развитие;
  • Экспертный анализ бизнес‐требований и технических решений, ревью кода;
  • Написание юнит-тестов и интеграционных тестов;
  • Активное участие в развитии команды.

Требования:

  • Неоконченное высшее/Высшее техническое образование;
  • Начальный опыт разработки на Java, возможно Вы только что закончили курсы;
  • Минимальные знания работы с СУБД и SQL (желательно oracle, pl\sql);
  • Опыт разработки web-ориентированных систем, опыт фронтэнд разработки как плюс;
  • Понимание полного цикла разработки ПО;
  • Вас научат работе с системами сборки (мы используем Gradle и Maven);
  • Вас научат работе с фреймворками для тестирования (мы используем JUnit, Mockito, Spock, spring-test);
  • Вас научат работе с инструментами командной разработки (мы используем Jira, Confluence, Stash, Gitlab);
  • Вас научат работе с Linux (в качестве рабочих станций у нас Ubuntu);
  • Знание английского языка — чтение технической документации;

Условия:

  • Заработная плата определяется по результатам собеседования;
  • Дружный, молодой коллектив профессионалов, у которых есть чему поучиться;
  • Обучение полному стеку технологий;
  • Уютный офис рядом с м. Павелецкая;
  • График 5/2 без привязки к рабочему времени, возможность совмещать с учебой;
  • Хорошие перспективы остаться работать в компании после стажировки.
  • Чай, кофе, печенье;)

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

Краткое описание

Мир увидел язык программирования Java в 1995 году, в конце XX века он был очень популярен, хотя и сегодня его используют более 9 млн. разработчиков. На этом языке написаны следующие продукты:

  • видеоигры;
  • приложения для «Андроид»;
  • клиент-серверные приложения и другие.

IT-специальности сегодня по праву могут считаться самым перспективным направлением, но этот сегмент никогда не испытывает дефицит кадров. И, несмотря на это, программисты Java были и будут востребованы на рынке труда, ведь на долю этих сотрудников приходится около 14% всех IT-вакансий.

Описание профессии

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

Работа программиста, выбравшего язык Java, состоит из таких этапов:

  • работа с заказчиком;
  • разработка архитектуры, программных модулей, Enterprise Application Integration;
  • тестирование и внедрение;
  • исправление ошибок, если они были замечены во время работы с продуктом;
  • дальнейшая техническая поддержка.

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

Классификация

Всех программистов Java условно разделяют на несколько групп, учитывая уровень их профессиональных знаний, индивидуальные способности и ранее реализованные проекты:

  • молодые специалисты, которые знают основы языка программирования, но пока не умеют применять их на практике. Могут работать помощниками или принимать участие в проектах с малым бюджетом и низким уровнем ответственности;
  • младший разработчик (Junior). Имеет минимальный опыт работы, умеет исправлять небольшие ошибки, его работу проверяют коллеги, ведь в случае упущений именно они будут отвечать перед начальством;
  • разработчик (Java Middle). Этот специалист уже имеет опыт работы, он может самостоятельно писать код, который не нуждается в проверке, работает с заданиями средней сложности;
  • старший разработчик (Senior). Легко справляется с любыми задачами, несет полную ответственность за сроки, написанный код, внесенные изменения и т. д.;
  • руководитель группы (Teach Lead). Специалист высокого уровня, который не только занимается написанием кода, но и раздает ТЗ, контролирует работу младших сотрудников;
  • архитектор (Architect). Самый высокооплачиваемый специалист, занимающийся проектированием, который может самостоятельно вытянуть весь проект.

Наиболее востребованы на рынке труда разработчики и старшие разработчики, труд которых могут оплатить небольшие компании. Руководители и архитекторы — штучные специалисты, которых берут в штат представители среднего и крупного бизнеса.

Плюсы и минусы профессии

Плюсы

  1. Вакансий действительно много, поэтому найти работу — не проблема.
  2. Удаленная работа.
  3. Перспективное направление.
  4. Работа в творческой команде.
  5. Если специалист работает в офисе, то для него создаются лучшие условия: бесплатное питание, кондиционер, хороший ПК и т. д.

Минусы

  1. Нестабильный оклад, ведь у молодых программистов Java работа есть не всегда.
  2. Большая ответственность.
  3. Сложно найти рабочее место, если нет опыта.

Важные личные качества

  1. Целеустремленность.
  2. Способности к точным наукам.
  3. Сосредоточенность.
  4. Умение руководить рабочей группой.
  5. Аккуратность.
  6. Пунктуальность.
  7. Лингвистические способности.
  8. Желание самообучаться.

Обучение на программиста Java

В конце прошлого века более 60% программистов были самоучками, на что работодатели закрывали глаза. Но сегодня все изменилось, поэтому первое, что необходимо предъявить во время трудоустройства — это портфолио и диплом о высшем образовании. Изначально необходимо получить специальность, связанную IT-направлением (информатика, вычислительная техника, математика, программная инженерия и другие). Заметим, что для поступления в вуз необходимо сдать 4 экзамена по ЕГЭ: русский язык, ИКТ, информатика, математика. Успешное прохождение тестов — гарантия поступления на бюджет!

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

Курс . Практический 4-х месячный курс для тех, кто хочет научиться основам программирования с индивидуальным наставником, написать код для реальных проектов и получить первые заказы. Вашей дипломной работой станет ваше первое полноценное Java-приложение «Javagram» (аналог популярного приложения Telegram).

Вузы

  1. Московский государственный университет имени М.В. Ломоносова.
  2. Высшая школа экономики.
  3. Московский политехнический университет.
  4. Российский университет дружбы народов.
  5. Московский государственный технический университет имени Н. Э. Баумана.
  6. Институт радиоэлектроники и информационной безопасности (ИРИБ).
  7. Санкт-Петербургский государственный электротехнический университет.
  8. Санкт-Петербургский государственный университет.
  9. Санкт-Петербургский государственный университет аэрокосмического приборостроения.
  10. Санкт-Петербургский государственный экономический университет.
  11. Новосибирский государственный университет.
  12. Новосибирский Государственный Технический Университет.
  13. Южный федеральный университет.
  14. Институт математики, механики и компьютерных наук им. И. И. Воровича.
  15. Оренбургский государственный университет.
  16. Челябинский государственный университет.

Место работы

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

Оплата труда

Представитель профессии начинает работать в крупных проектах уже через 1-1,5 года после прохождения обучения. Его заработная плата зависит от той группы, к которой он принадлежит. Молодой и младший разработчик Java может рассчитывать на оклад, размер которого не превышает 20-40 тыс. руб., разработчики и старшие разработчики претендуют на вакансии с окладом выше 50 тыс. руб. Размер оклада специалистов Teach Lead и Architect оговаривается индивидуально.

Зарплата на 17.09.2019

Россия 60000—90000 ₽

Москва 100000—250000 ₽

Профессиональны знания

  1. Язык программирования Java.
  2. Другие языки программирования (C++, Ruby, PHP и т. д.).
  3. Фундаментальные основы языка Java Core.
  4. Знание SQL, JDBC, OOP, OOD, СУБД, CASE.
  5. Технический английский язык.
  6. Библиотеки классов Java, client—server.
  7. Software Engineering Process.
  8. Языки разметки (HTML, XML и другие).
  9. Кластерные архитектуры.
  10. Опыт работы не мене 1-3 лет.

Если вы рассматриваете и другие варианты (помимо трудоустройства программистом java), то не ограничивайтесь этой подборкой объявлений, в нашем множество других позиций для разных должностей. Там же вы можете воспользоваться поиском по предложениям прямых работодателей и агентств.

Требования к соискателю:

Хорошее знание ООП Опыт разработки на Java и С++ от 2 лет Знание Swing, Reflection, XML RPC, Subversion. Желателен опыт работы с последовательным портом в Java Опыт администрирования Linux

Заработная плата: от 70000 руб. в месяц

Требования к соискателю:

Опыт работы не менее 1 года. Разработка и поддержка web- и/или enterprise-приложений на Java. Отличное знание SQL (желательно с особенностями PostgreSQL) Знание HTML/CSS и JavaScript Опыт работы с Apache Maven/Artifactory/Ant. Отличное знание unix-среды. Умение работать в команде, проверять результаты своей работы, способность производить код высокого качества. Самостоятельность и ответственность Приветствуется: Опыт работы с UI-библиотеками на JavaScript. Опыт работы с компонентами Spring. Опыт конфигурации/администрирования Apache, Nginx, Glassfish.

Заработная плата: до 45000 руб. в месяц

Требования к соискателю:

Высшее техническое образование. - Знание английского языка на уровне чтения технической документации. - Навыки самостоятельного анализа задач и составления алгоритмов. - Знание языка Java SE. - Приветствуется знание дополнительно: basic, С, HTML, css, MySQL запросы (один или несколько из перечисленных языков, опыт реальной работы с ними не принципиален). - Знание принципов работы с СУБД. - Понимание схемотехники. Готовы рассмотреть обучаемых выпускников технических ВУЗов с минимальным опытом работы, без вредных привычек, желающих дисциплинировано работать в стабильной компании и учиться прикладному программированию.

Требования к соискателю:

Опыт работы с React, JavaScript ES обязателен. Redux, Flow-type желателен. JavaScript (в современной редакции) React JS CSS

Заработная плата: от 50000 до 60000 руб. в месяц

Требования к соискателю:

Рассматриваются кандидаты с небольшим опытом или без опыта работы, с высшим образованием (либо студенты последнего курса с возможностью работать полный день). Наличие собственных проектов на Java за рамками учебной программы ВУЗа (могут быть некоммерческие разработки, свои небольшие пробные проекты).

Заработная плата: по договоренности.

Требования к соискателю:

Гражданство РФ Качественное выполнение задач в срок. Личностная вовлечённость в дело, в вашем лексиконе должны отсутствовать фразы "я не знаю", "я не умею", "этого нет в моем тз" и т.д. Желание и умение в короткие сроки осваивать новые ЯП, технологии, ПО, проч. Java/Kotlin/JavaScript (фронт тоже на Kotlin) spring, openlayers, vue docker, electron, git nosql, neo4j, очереди flux

Заработная плата: до 150000 руб. в месяц

Требования к соискателю:

Уверенное владение Core Java от 3-х лет; Понимание принципов ООП; Знание SQL, UML; Опыт командной разработки с использованием системы контроля версий, управления требованиями и конфигурациями; Умение разбираться в чужом коде. Как плюс: Опыт работы в банковской сфере; Понимание паттернов проектирования; Spring, Spring MVC, JMS. Английский (технический) Английский язык технический

Заработная плата: по договоренности.

Требования к соискателю:

Высшее образование (предпочтительно техническое); Опыт работы в аналогичной должности не менее 1,5 - 2 лет, знание и практический опыт Java, JavaScript, HTML, SQL (Oracle), PL/SQL. Приветствуется знание области страхования, бухгалтерии.

Заработная плата: по договоренности.

Требования к соискателю:

Язык разработки: JAVA - Знание SQL, СУБД: Postgre, Elastic Search - Знание HTTP, REST-HTTP, HTML/CSS 5, Java-Script - Система управления версиями: GIT. - Методика организации разработки: Agile. Инструменты: JIRA, Confluence. - Web сервер: Tomcat. - Понимание ORM и практический опыт работы c Hibernate; - Опыт использования GWT/GXT

Заработная плата: до 80000 руб. в месяц

Требования к соискателю:

Знание архитектуры Atlassian JIRA и структуры ее БД Опыт работы java программистом Знание спецификации Java (Spring, Tomcat, REST, SQL) Знание и опыт использования средств сборки ПО (Maven) Умение работать с SQL/NoSQL БД Умение работать с JavaScript (jquery), CSS3, HTML5 Чтение технической литературы (в основном вся документация на английском) Как преимущество: владение функционалом JIRA. Опыт автоматизации процессов разработки с применением JIRA. Знание архитектуры Atlassian Confluence, владение базовым функционалом. Опыт интеграции JIRA с Confluence.

Заработная плата: по договоренности.

Требования к соискателю:

Заработная плата: от 180000 до 200000 руб. в месяц

Требования к соискателю:

1. Опыт программирования на Java EE от 3-х лет/ 2. Хорошее понимание ООП. 3. Хорошее знание SQL.. Опыт работы с PostgreSQL как плюс. 4. Знание основных паттернов проектирования. 5. Написание unit-тестов, желательно «знакомство» с модульным тестированием. 6. Написание «чистого» кода. Способность и опыт работы со корпоративным стандартами кодирования. Сокращенные конструкции не принимаются – нужен "читабельный" код. 7. Опыт работы с сетевыми подсистемами (опыт и понимание как работает сетевой стек). 8. Опыт работы с системами контроля версий. 9. Linux системы на уровне пользователя. Желательно: 11. Опыт работы в платежных провайдерах (PSP, IPSP). 12. Опыт работы с банковскими картами (на любом уровне, вариан в интернет-магазин делал интеграцию с платежной системой подходит). 13. Понимание принципов функционирования e-commerce систем. 14. Опыт написания скриптов на JavaScript – базовое понимание. 15. Знание английского языка на уровне чтения проф. литературы.

Заработная плата: от 40000 до 150000 руб. в месяц

Требования к соискателю:

Все из перечисленного или что-то конкретное, но на хорошем уровне: Spring Framework (и вариации Spring MVC, Spring Security, Spring Boot, Spring AOP, Spring DI, ….) Java / JRE / JDK Hibernate Git или Mercurial Работа с трекерами задач / Jira / Redmine / Mantis _____________________________________________________________________ Плюсы на собеседовании добавят знания в следующих областях: Java 8 Eclipse или Intellij Idea JSP / JSTL Модульное тестирование / JUnit Web / HTML / CSS / JS / JQuery / Bootstrap Oracle Database / Oracle / SQL UML / ERD / Sybase PowerDesigner __________________________________________________________________ Большим бонусом является участие в олимпиадах / ACM-ICPC

Заработная плата: до 100000 руб. в месяц

Требования к соискателю:

Возможно обсуждение работы на дому (при достаточном КПД работы) желательно знание Meteor.js желателен опыт работы с какой-либо биржей

Заработная плата: по договоренности.

Требования к соискателю:

Программирование на Java

Заработная плата: от 100000 до 150000 руб. в месяц

Требования к соискателю:

Хорошее знание синтаксиса Java и понимание его работы. Знание базовых конструкций и классов языка Java 1.7. Понимание работы: циклов, условных операторов, коллекций, перегрузки метода. Понимание принципов ООП, в частности: наследование, объект класса, ссылка на объект, уровни доступа к свойствам и методам класса (инкапсуляция), полиморфизм (работа с дочерним классом как с родительским). Знание основных принципов построения интерфейса, компоненты, использование стилей. Опыт работы с СУБД. Хорошее знание синтаксиса SQL, PL/SQL. Создание хранимых функций, представлений, триггеров. Понимание, как формируется выборка данных. Понимание основных принципов работы транзакций. Понимание основ архитектуры реляционных баз данных. Умение работать с командной строкой в Linux: навигация, копирование, редактирование файлов, запуск\остановка программ\сервисов. Умение самостоятельно находить решение, если раньше этого не делал. Умение читать чужой код. Умение форматировать и комментировать свой код. Опыт программирования для систем класса ERP, CRM, WMS. Понимание основ работы ERP-систем. Работа на результат, а не на процесс. Желательно: Умение работать в Eclipse. Опыт работы с JasperReport\iReport. Опыт разработки для ZK Framework Знание, как работать с системами контроля версий. Опыт работы с PostgresSQL. Опыт работы с Linux. Умение читать техническую англоязычную литературу. Мы будем рады, если у Вас есть опыт работы с OSGi, а также с семейством программ ERP Compiere/Adempiere/iDempiere/OpenBravo

Заработная плата: по договоренности.

Требования к соискателю:

Опыт в Java от 2-х лет Знание паттернов и шаблонов проектирования Хорошее знание SQL Владение Git, Maven, Java 8 Понимание принципов микросервисной архитектуры Написание тестов JUnit Хорошее знание: core, collections, concurrency

Заработная плата: по договоренности.

Требования к соискателю:

Обязательные требования: Хороший уровень знаний Java Опыт коммерческой разработки на Java от 3 лет Знание паттернов проектирования и умение их применять в реальных проектах Уверенное знание Spring Framework (IoC, MVC, Data JPA, Transactions), Hibernate Опыт использования реляционных СУБД или NoSQL-хранилищ Ответственность и аккуратность, умение тестировать собственный код Умение работать в команде Желательные требования: Опытный пользователь Linux Опыт работы с Git или Mercurial Опыт разработки высокопроизводительных и высоконадёжных приложений Ключевые навыки: Java Spring Framework ООП SQL JDBC PostgreSQL Git Linux Apache Tomcat Hibernate ORM

Заработная плата: по договоренности.

Требования к соискателю:

Опыт работы от 1-3 лет, высшее образование; - Опыт командной разработки; - Высшее техническое образование; - Опыт проектирования и разработки серверных приложений на Java (j2ee, Jax-ws, hibernate, jboss); - Опыт разработки web-приложений с использованием GWT (HTML, JavaScript, CSS) – от года; - Опыт разработки с использованием СУБД PostgreSQL; - Понимание принципов ООП и шаблонов проектирования; - Английский язык уровня чтения технической документации.

Заработная плата: по договоренности.

Требования к соискателю:

Базы данных (Oracle) ∙ JDBC ∙ Connection pooling ∙ Версионирование схем баз данных (Flyway) Сервер приложений (Java) ∙ Java 8 ∙ Системы сборки (Ant/Maven) ∙ JavaEE  Servlet  Шаблонизаторы (JSP / JSTL / Velocity) ∙ Основной фреймворк (Spring Framework)  Dependency Injection  Isolation Of Controls  MVC  Аспектно-ориентированное программирование ∙ Веб сервисы  WSDL/SOAP (Apache CXF)  REST (JAX RS) ∙ ORM (Hibernate) ∙ Построение отчётов (JasperReports/ DynamicReports, Apache POI, IText) ∙ Типовые библиотеки (Apache commons, Guava, JodaTime) Пользовательский интерфейс (Web приложения) ∙ Bootstrap ∙ HTML/HTML5 ∙ CSS  CSS пре- и пост-процессоры (Less, autoprefixer) ∙ JavaScript  JQuery, Polyfills, AJAX, JSON ∙ Мобильные устройства Test / QA ∙ Модульное тестирование  JUnit  Mockito (mocking, stubbing, ...)  PowerMock (static mocking) ∙ Интеграционные тесты (Selenium/Selenide, Selenium driver) ∙ Снятие метрик исходного кода  Статическая проверка кода (Checkstyle, Findbugs, PMD)  Покрытие кода тестами (Jacoco) Организация процесса разработки ∙ Системы контроля версий (Git, Subversion) ∙ Трекер (Redmine) ∙ База знаний (Redmine wiki) ∙ Continuous integration (Jenkins) ∙ Среды разработки (Eclipse, Intellij IDEA)

Заработная плата: по договоренности.

Требования к соискателю:

Высшее/ неоконченное высшее образование по направлению Знание: WebTutor, CourseLab, MS Office Основы Adobe Photoshop – обязательно HTML, CSS, JavaScript, XML, SQL, Jquery Знание 1С - желательно Основы объектно-ориентированного программирования Высокий уровень самоорганизации, ответственный подход, коммуникабельность

Заработная плата: по договоренности.

Требования к соискателю:

Опыт работы от 2 лет; Знание: J2EE, J2SE, JAXB, SOAP, REST, SQL/ PL-SQL, SWING. Опыт работы с Oracle Database 11g, Weblogic 12c; Знание специальных ПО: mercurial, svn, maven, ant, hudson, Jenkins; Приветствуется опыт веб-разработки (HTML, CSS, JavaScript, Sencha ExtJs). Дополнительно: Нацеленность на долгосрочное сотрудничество, аналитическое мышление, ориентированность на результат, умение работать в команде; Приветствуется наличие успешных проектов на Git Hub.

Заработная плата: по договоренности.

Требования к соискателю:

Желательно знание английского языка на уровне чтения технической документации; Высшее образование Опыт промышленной разработки с использованием Java (J2EE, J2SE) от 3 лет; Знание J2EE (JSP/Servlets, EJB, JMS, JTA, etc); Знание и опыт использования Hibernate/ Spring / JavaScript / HTML / CSS / JQuery; Знание технологий Ajax, EJB 3.0, JPA, JAX-RS, SOAP; Опыт работы с одним из серверов приложений: JBoss, Tomcat; Опыт использования Maven, Ant; Знание SQL и опыт работы с одной из реляционных баз данных - Oracle, PostgeSQL, MySQL, MS SQL Желательно опыт использования GWT; Опыт работы с одной из систем контроля версий StarTeam, SVN/Git/ CVS; Опыт разработки объектов БД Oracle (хранимые процедуры, пакеты, java class).

Заработная плата: от 80000 руб. в месяц

Требования к соискателю:

Уверенные знание JS, ES2015 (ES6); - Желателен опыт работы с React/React Native, NodeJS; - Понимание принципов создания мобильных приложений для Android и IOS; - Навыки вёрстки; - Понимание принципов ООП, паттернов проектирования ПО. - Желателен навык работы с Adobe Photoshop, Corel Draw - Исполнительность, коммуникабельность, системное мышление, аналитический склад ума; - Опыт разработки не менее 3-х лет; - Приветствуется опыт разработки высоконагруженных систем; - Особенно приветствуются сертификаты, рекомендации и богатое портфолио, опубликованные приложения в магазинах Apple и Google.

Заработная плата: по договоренности.

Требования к соискателю:

Хорошее знание Java Core (язык, базовые библиотеки, Java Collections); Опыт разработки J2EE-приложений; Опыт работы с EJB, транзакции; Опыт работы с серверами приложений (Oracle GlassFish, Oracle WebLogic, ...) Опыт разработки веб-приложений на Java (сервлеты и основные знания по front-end, JSP, HTML, CSS); Знакомство с JavaScript, Ajax, jQuery; Опыт работы с RDBMS (PostgreSQL, ORACLE) JDBC, знание SQL (DDL, DML), опыт работы с ORM Hibernate; Рефакторинг, анализ чужого кода; Понимание особенностей трехзвенной архитектуры; Опыт работы с XML, DOM, XSLT; Опыт работы с ANT, VCS (SVN); Опыт работы с bug-tracking (JIRA, Redmine); Английский язык (технический).

Заработная плата: по договоренности.

Требования к соискателю:

Опыт работы от 3 лет в сфере Java-разработки; - знание современных информационных технологий, опыт разработки коммерческих систем; - опыт разработки архитектуры программных систем; - понимание принципов современной разработки и ведения проектов (agile, баг трекеры, системы контроля версий, автоматические сборки).

Заработная плата: от 120000 до 150000 руб. в месяц

Требования к соискателю:

Опыт разработки на платформе Java (реализация OpenJDK) от 4 лет Знание паттернов проектирования, понимание принципов подхода к безопасности веб приложения Фреймворки: Spring, Hibernate Работа в команде: умение выразить и аргументировать свою позицию. Ответственность. Самостоятельное принятие решений. Навыки работы с SQL СУБД из консоли Умение документировать свой код и разбираться в чужом. Использование средств контроля версий. Общее представление о технологиях шифрования данных. Опыт работы с Unix системами: командная строка, типичные действия с файлам, каталогами, просмотр файлов.

Заработная плата: по договоренности.

Требования к соискателю:

* Уверенные знания технологий: Java (Collections, Servlets, JSP), Spring Core и Spring MVC, отличное знание SQL, * Опыт коммерческой разработки на Java от 2-х лет, * Опыт работы с системами контроля версий и баг-трекинга, * Опыт работы по созданию клиент-серверных приложений и программирования информационных систем на базе промышленных СУБД (Oraсle, MS SQL и т.п.), * Опыт индивидуальной и групповой разработки, * Желание расти как профессионалу в области enterprise-разработки.

Заработная плата: от 50000 до 80000 руб. в месяц

Требования к соискателю:

Опыт разработки в среде Eclipse Опыт работы с использованием: Spring, Hibernate, Maven Опыт работы с использованием систем отслеживания ошибок, систем непрерывной интеграции и систем контроля версий Приветствуется наличие сертификатов Oracle (Sun)

Заработная плата: от 60000 руб. в месяц

Требования к соискателю:

Заработная плата: по договоренности.

Требования к соискателю:

Обязательные условия: - Опыт работы с Oracle Database 11g (администрирование, проектирование) - уверенные знания SQL, PL/SQL; - Опыт работы с HTML, CSS, XML, AJAX, JavaScript; - постановка задачи, общение с заказчиком. Желательно: - Высшее техническое образование; - Знание PL-SQL developer - основные принципы формирования и проведения банковских операций. - Опыт на аналогичной позиции от 3х лет.

Заработная плата: до 60000 руб. в месяц

Требования к соискателю:

Навыки разработки на JAVA (JSE), Python (2.7) Умение разбираться в чужом коде Опыт работы с СУБД (MySQL, PostgreSQL, Oracle) на уровне написания селектов

Заработная плата: от 110000 до 140000 руб. в месяц

Требования к соискателю:

Опыт программирования Java (от 2-х лет) Уверенное владение Java-технологиями (J2EE) и обязательно Spring и Hibernate Образование высшее техническое

Заработная плата: до 65000 руб. в месяц

Требования к соискателю:

Гражданство РФ. Необходимые знания: 1) Основы объектно-ориентированного программирования (ООП). 2) Программирование на языке Java с использованием технологии Java SE (Swing). 3) Опыт работы с Базами данных, поддерживающими SQL нотации: MS SQL Server 2005+, Interbase. 4) Опыт написания SQL скриптов. Желателен (но не обязателен) опыт работы с Ant – скриптами, EJB, Application Serves для Java (Glassfish, Tomcat и т.п.), Java Spring, Hibernate, frameworks вместе с Spring ORM и т.п., Visual Basic for Applications, платформой.NET (написание.dll и работа с железом). Желателен опыт работы в среде NetBeans, опыт контроля версий ПО с помощью Subversion.

Заработная плата: от 120000 руб.. в месяц

Требования к соискателю:

J2SE, J2EE, Spring, XML, SQL. Разработка интерфейса на JSP, HTML, HTML5, CSS, JavaScript; желательно: опыт работы с продуктами Apache: Jetty, Camel, ActiveMQ, Derby. знание технологий: JMS, JMX, JDBC.

Заработная плата: от 60000 до 80000 руб.. в месяц

Требования к соискателю:

Заработная плата: по договоренности.

Требования к соискателю:

Уверенные знания SQL; - высшее образование (математика/физика/инженерные специальности); - опыт коммерческой разработки на Java от 2-х лет; - уверенные знания технологий: Java (Collections, Servlets, JSP), Spring Core или Spring MVC; - опыт работы с системами контроля версий и баг-трекинга; - знание английского языка (чтение документации); - желание расти как профессионал в области enterprise разработки.

Заработная плата: по договоренности.

Требования к соискателю:

Опыт разработки высоконагруженных систем; Опыт как в части frontend, так и в backend; Знание и опыт работы в Jboss, Appache, Tomcat, Hibernate, Spring, SQL, Junit, Maven, SOAP, Java, JS, EXTJS, HTML+CSS, XML/XSLT, WSDL/XSD; Плюсом будет опыт работы с PostgreSQL, разработка шин обмена данными; Опыт продвинутой работы с Linux платформами.

Заработная плата: от 50000 до 80000 руб.. в месяц

Требования к соискателю:

Отличное знание Java SE, MySQL (сложные запросы и оптимизация запросов к БД); - Знание библиотек: Netty, MyBatis; - Знание сетевых протоколов tcp/ip; - Твердое понимание принципов ООП и умение их применять; - Знание и понимание MVC, реализации событийно-управляемой модели выполнения кода; - Опыт проектирования и разработки сложных серверных приложений; - Опыт разработки многопоточных приложений; - Желание и готовность работать в команде, ответственность, внимательность, пунктуальность; - Опыт работы в команде. Плюсом будет: - Опыт разработки распределенных систем; - Участие в игровых проектах; - Умение грамотно составлять документацию.

Заработная плата: по договоренности.

Требования к соискателю:

Образование неполное высшее, высшее (техническое). Опыт работы в разработке приложений на Java от 3-х лет; Уверенное знание Java EE; Опыт работы с базами данных PostgreSQL; Желательно знание Spring Framework, GWT; Уверенное знание английского языка, чтение технической документации; Плюсом также будет знакомство с: Apache Maven 3.0.4, Apache tomcat 7.0, Spring 3.1 (MVC, IOC), Jenkins 1.x, EclipseLink 2.x, Apache CSF, Freemarker, Shtrih, JPos, iText.

Заработная плата: от 100000 руб.. в месяц

Требования к соискателю:

Знание языка программирования Java. Опт работы программистом не менее 3-х лет. Знание языков разметки HTML и XML Опыт создания таблиц стилей CSS Опыт управления содержанием систем - инструмент Liferay Роrtаl CMS Знание принципов организации систем ГИС Опыт макетирования пользовательских интерфейсов с помощью специального ПО опыт загрузки картографической информации с использованием СУБД Oracle Навыки установки и сопровождения общесистемного программного обеспечения, установки и запуска баз данных, веб-серверов и сервисов навыки разработки общесистемных скриптов Навыки администрирования Linux RHEL, MS Active Directory, CentOS 5, Windows 2008 Server Навыки Linux Shell Scripting Опыт установки и запуска, управления и администрирования СУБД Oracle, СУБД Му SQL Навыки проектирОвания БЩ, построения кластерных хранилищ данных Знание языка запросов SQL навыки проектирования объектной модели данных Знание нотации моделирования структуры данных UML

Заработная плата: от 65000 до 80000 руб.. в месяц

Требования к соискателю:

JAVA EE (Servlets/JSP, JDBC, JPA)!!! Опыт работы с Tomcat Иметь представление о XML, XSLT, XSD, WSDL, SOAP Опыт работы с РСУБД, знания SQL Будет плюсом: Spting MVC Hibernate, Spring Data JPA Опыт разработки web-сервисов с использованием технологий: JAX-WS, JAXB (Metro) PostgreSQL (PL/pgSQL) SVN Redmine Администрирование Linux JavaScript, HTML, CSS

Заработная плата: по договоренности.

Требования к соискателю:

Что требуется от Вас? Опыт разработки на JAVA от 3-х лет и наличие мечты работать на SCALA. Любовь к web-решениям, опыт работы с СУБД и frontend разработки. Плюсом будут следующие вещи (отсутствие чего либо из перечисленного или всего сразу не является препятствием, научим всему): опыт работы с Play 2 framework опыт работы с ORM вообще и Slick в частности понимание распределенных вычислений и знакомство с Akka навыки работы в интеграционных проектах (стандартные и не стандартные протоколы) понимание командной разработки, терпимость к чужому коду, написание тестов для своего и чужого кода Дополнительным преимуществом является опыт и желание не ограничиваться backend логикой: опыт frontend-разработки на JavaScript знакомство с AngularJS

Требования к соискателю:

Заработная плата: от 60000 до 130000 руб. в месяц

Требования к соискателю:

Опыт работы с web-серверами и серверами приложений J2EE. - Знание шаблонов проектирования Java и J2EE - Опыт работы с Spring, Maven, GWT, EJB, JPA - Опыт работы в команде разработчиков - Опыт работы с системами контроля версий (Git). - Опыт работы с РСУБД - Знание HTML, CSS, JavaScript. - Знакомство с Glassfish, Atlassian JIRA. - Опыт программирования на Java от 2 лет

Заработная плата: от 90000 руб. в месяц

Требования к соискателю:

Обязательно: JAVA, Oracle SQL PL\SQL - Знание Oracle ADF - приветствуется! - Опыт работы с Web Logic - приветствуется! - Желательно опыт работы с SVN - Опыт работы с ИС от 2-х лет

Заработная плата: по договоренности.

Требования к соискателю:

Желательно: HTML, CSS. javascript, jquery. Опыт работы с реляционными базами данных: Знание языка SQL и умение писать запросы. Опыт oracle, mssql приветствуется.

Заработная плата: до 90000 руб. в месяц

Требования к соискателю:

Опыт работы от 3-х лет Знание английского языка технологии maven, Jenkins, (желательно: spring, hibernate, zk framework)

Заработная плата: по договоренности.

Требования к соискателю:

Уверенное знание Java - уверенное знание принципов ООП - уверенное знание принципов работы СУБД, понятия "план запроса", умение писать сложные но оптимальные sql выражения. - базовые знания HTML, CSS - понимание базовых алгоритмов, структур данных и шаблонов проектирования - опыт работы с системами автоматизации процесса разработки Будет большим плюсом: - опыт работы с Oracle DB/ PLSQL - знание JavaScript, опыт разработки ajax-based приложений - опыт работы со Spring - опыт работы с Maven - опыт работы с Git

Заработная плата: от 60000 до 90000 руб. в месяц

Требования к соискателю:

JAVA EE (JSF, Primefaces, JAX-WS, EJB, ORM, Security, SAX/DOM parse), Maven, Jasper Report HTML, CSS (Bootstrap), JavaScript (JQuery) MySQL (+Stored Procedures) GlassFish, Mercurial Основной критерий – хорошее знание JAVA EE и опыт Web-разработок, остальные пожелания обсуждаются

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

Зарплата программиста

Хочу рассказать о зарплатах программистов. Как собственно обстоят дела с зарплатой, куда лучше идти работать, а куда - нет. Если вы не программист и попытаетесь самостоятельно разобраться в этой теме, то можете получить набор очень противоречивых данных. Все дело в том, что главным фактором, влияющим на зарплату программиста, является не его квалификация, а место работы. Иногда, при одинаковой квалификации, разница между хорошим и плохим местом может достигать 2-10 раз(!) В каждый конкретный момент времени ваша квалификация постоянна. Вы не можете за месяц стать опытнее в два раза и получать в два раза больше. А вот сменить за месяц работу и получать в два раза больше - очень даже можете. Однажды в течении двух месяцев моя зарплата выросла в три раза(!) - незабываемое впечатление. Давайте же выясним, где лучше всего работать. Вот три фактора, которые очень сильно влияют на уровень зарплат в компаниях:
  1. Является ли разработка ПО основным бизнесом компании.
  2. Ориентирована ли компания на международный рынок или на внутренний.
  3. Собственником фирмы является западная компания или отечественная.
Обратите внимание, что город, в котором вы живете не играет решающей роли. Т.е. если вы получаете в 10 раз меньше, живя в Дрездене, чем ваш знакомый в Нью-Йорке, значит, в дело вступили перечисленные выше факторы.

Конкретные цифры

Сложно привести какие-то конкретные цифры для всего мира. Я дам описание ситуации для Восточной Европы, которая в целом справедлива для всех стран, где более-менее развит IT-outsource/outstaff. Ниже приведен расклад зарплат программистов для Киева – это крупный центр ИТ-аутсорса Восточной Европы. В СПб зарплаты на 10% выше, в Москве где-то на 20%. Не встречал в Восточной Европе ни одного города-миллионника, где бы зарплаты были на 30% меньше чем в Киеве. Так как вы все из разных городов, предлагаю увеличивать приведённые мною цифры, в соответствии с указанной шкалой:Вот сколько может зарабатывать Java Senior Developer с пятью годами опыта работы, в зависимости от уровня компании, в которой работает:
Уровень Зарплата в месяц Описание
1 $200 - $500 Внизу находятся фирмы, где ИТ - это непрофильное направление бизнеса компании, заказчик - внутренний рынок, а собственник - государство. Например, ИТ-отдел в налоговой или другой государственной организации.
2 $500 - $1500 Ниже среднего находятся ИТ отделы различных не государственных структур: банков и т.д.
3 $1,000 - $2,500 Средний уровень - это фирмы, которые занимаются разработкой ПО
4 $3,000 - $4,000 Выше среднего - это фирмы, которые занимаются разработкой ПО, и заказчики у них с запада
5 $4,000 - $5,000 На вершине - фирмы, занимающиеся разработкой ПО, заказчики у них с запада, и собственник тоже. Их мало. Открытые вакансии бывают нечасто, и попасть туда непросто. Но они есть.
Что самое странное в сложившийся ситуации? Половина всех программистов работает в фирмах уровня 1 и 2. Хотите узнать, в чем подвох? Есть сотни открытых вакансий программистов в фирмах уровня 3 и 4. Эти компании готовы предложить более высокие зарплаты и, обычно, гораздо лучшие условия труда. Я знаю двух Java Junior’ов, один из которых пошел работать на $100 в месяц (в фирму уровня 1), а второй на $1,000 в месяц (уровень 4). Зачем получать меньше? Спрос на программистов превышает предложение – не идите работать туда, где мало платят! Вывод 1: Средние зарплаты Java-программистов в Киеве - около $1,200 в месяц Вывод 2: Ваша средняя зарплата, через 5 лет, если вы не пойдёте работать в фирмы уровней 1 и 2, а пойдете работать в фирмы уровня 3 и 4, будет выше $3,000 в месяц. Чего можно добиться, если не тупить Если вы будете постоянно заниматься саморазвитием в области программирования, то ваша зарплата, начиная с сегодняшнего дня, может выглядеть примерно так.

План

0-3 месяца (Ученик) Вы знаете о программировании очень мало. Может учили в школе и/или университете, но очень поверхностно. Ваша задача - учиться программированию и изучать Java. Ваша цель - устроиться на работу Java Junior’ом в компанию не ниже 3-го уровня. Первые три месяца на плане вы не получаете ничего, т.к. просто изучаете программирование. В будущем, когда у вас будет семья и куча кредитов, сменить специализацию будет гораздо сложнее. Чтобы исправить ошибку вам понадобится отложить денег на год нормальной жизни. Не делайте глупых ошибок. 3-15 месяцев (Java Junior Developer) Вы уже работаете программистом, и ваш опыт растёт с каждым днём. Не прохлаждайтесь. Вам ещё многое предстоит сделать, чтобы можно было почивать на лаврах. Ваша задача - изучать технологии, которые понадобятся вам как Middle разработчику. Какие именно технологии? Мир меняется. Я сейчас насоветую, а жизнь все поменяет. Найдите в интернете несколько вакансий и посмотрите, что для них требуется. Обязательно прочитайте книгу Брюса Эккеля «Философия Java». Ваша цель в первый год работы Java Junior’ом - дорасти до уровня Java Middle. Никто не говорит что это очень легко, но вполне возможно для целеустремлённого человека. Это сразу даст скачок ЗП до полутора тысяч. 2-й год работы программистом (Java Middle Developer, level 1) Вы хорошо потрудились в прошлый год, и теперь вы - Java Middle Developer. С зарплатой в полторы тысячи можно нормально жить. На работе вам дают серьёзные задания, и ваш опыт растёт как на дрожжах. Вы дорастёте до Java Senior Developer за два-три года. Нет смысла ускорять этот процесс. Сильного роста в зарплате вы все равно не получите. Ваша задача - изучите паттерны проектирования, прочитайте «Совершенный код» МакКоннела. Улучшайте качество своего кода и свои навыки работы в команде. Можно взять за правило каждую неделю читать одну книгу по ИТ. Тогда через год, вы будете на 50 книг умнее остальных. Не стоит откладывать это на потом: свободного времени у вас больше не станет. Вполне вероятно, что у вас появится семья, или пополнится, если уже есть. Ваша цель - выбрать несколько технологий, в которых вы будете специализироваться как Senior-разработчик. Всего вам все равно не изучить. А быть гуру в небольшой области – это хорошее решение. 3-й год работы программистом (Java Middle Developer, level 2) Вы уже опытный Middle разработчик и начинаете подумывать – стать Senior Developer. Это приятно и престижно. Ваша зарплата превышает 2 тысячи долларов (данные для Киева). С этого момента спрос на таких профессионалов как вы, превышает предложение. Вы всегда сможете устроиться на работу за пару дней, и вряд ли будете получать меньше, чем сейчас. Если, конечно, не выкинете какую-нибудь глупость. Ваша задача - продолжить изучение выбранных технологий. Работайте лучше. Не ради работодателя, ради вас самих. Проситесь в проекты с перспективными технологиями (такими как Big Data, на момент написания этой статьи). Вы все равно будете проводить в офисе 8 часов в день, так почему бы не получить за это немного больше денег и, что гораздо важнее, ценнейший опыт, который вам ещё понадобится. Ваша цель - сменить работу. Хороший коллектив есть везде. Вы столкнётесь с новыми проектами и технологиями. Не стоит раньше времени прирастать к стулу. Если вы все ещё работаете в компании третьего уровня, подумайте над переходом на четвёртый уровень. Пятый уровень, хоть и очень привлекательный, пока недостижим. 4-й год работы программистом (Java Senior Developer, level 1) Вы стали Senior разработчиком. Поздравляю. Возможно, стали им незаслуженно, и вы это чувствуете. Все равно поздравляю. Не важно, достойны ли вы сейчас вашей должности, главное чтобы вы стали достойны её в будущем. Согласитесь, лучше сначала получить хорошую работу, а через год дорасти до неё, чем дорасти до хорошей позиции и ждать её ещё год. Надеюсь, вы не забыли мой совет и читали по одной книге в неделю - теперь вашим возможностям позавидует любой студент. Вернее он готов молиться на них. Подумайте, у вас серьёзная зарплата, приближающаяся к трём тысячам долларов. Скорее всего, вы ещё молоды. Весь мир у вас под ногами. Ваша задача - ещё раз просмотреть выбранные вами технологии. Возможно, вам нужно сменить специализацию. Мир изменился, технологии изменились, да и знаний у вас за два последних года прибавилось. То, на чем вы сейчас остановитесь – станет вашим выбором на несколько ближайших лет. Самое время выбирать любимые технологии. Ваша цель - выбрать направление, в котором вы могли бы развиваться дальше. Их очень много, всех вариантов никто не перечислит, но выбор нужно сделать прямо сейчас. Если сегодня вы немного измените своё настоящее, это приведёт к большим изменениям в вашем будущем. 5-й год работы программистом (Java Senior Developer, level 2) Вы определились с вашим будущим и работаете над воплощением вашей мечты. Правильно выбранное направление в совокупности с желанием идти вперёд и результат не заставит себя ждать. Поздравляю. Я рад, что ещё одним счастливым человеком стало больше. Есть одна мудрая истина. Люди часто переоцениваю чего можно добиться за один год, и недооценивают, чего можно добиться за пять лет. Оглянитесь на пять лет назад. Так оно и есть. Ваша задача - не принимать глупых решений и не идти на поводу у лени. Ваша цель - выбрать направление и двигаться дальше. А вы думали это конец? Вспомните свой выпускной класс. Это не конец, это только начало.

Будущая специализация

Вы можете развиваться как технический специалист (верхняя ветка), как управленец (нижняя ветка) или как наемный профессионал/независимый консультант (средняя ветка). Все зависит от ваших предпочтений.

Карьера программиста

Профессия программист отличается от других профессий. Здесь нет необходимости делать карьеру менеджера, чтобы хорошо зарабатывать. Нередки ситуации, когда старший программист получает больше, чем его начальник-менеджер. Чем больше вы набираете опыта, тем сильнее ваши отношения с начальством движутся от точки «начальник-рабочий» к отношениям вида «кинозвезда и её менеджер». Зажравшиеся, знающие себе цену программисты перебирают и проектами и вакансиями. Порадуемся за своих. Что же нужно, чтобы стать таким высококлассным и востребованном в мировом масштабе программистом? Вы должны иметь большой опыт в самых новых и востребованных технологиях. Как этого достичь? Ответ ниже. После того, как вы первый раз устроились работать программистом, с вами начинают происходить две вещи, которые, как ни странно, не всегда бросаются в глаза.
  1. Вы начинаете быстро набирать опыт работы в реальных проектах. Один год опыта работы программистом может дать вам больше знаний и навыков в вашей специальности, чем 5 лет университета. Опыт – это настолько значимый показатель, что в IT-вакансиях зачастую пишут «требуется Java-программист с тремя годами опыта работы».

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

Двухсотлетний программист

Если больше всего вам нравится программировать , то ваш путь: Senior Developer, затем Tech Lead Developer и архитектор. Также вы можете просто работать программистом лет 50. Зачастую зарплаты старших программистов и техлидов превышают зарплаты их менеджеров. Не прогадайте.

Менеджер. Тебе повезло, ты не такой как все

Вы перешли на сторону врага. Шучу. Если у вас открылись недюжие организаторские способности , то ваш путь: Team Lead, а затем Project Manager. Это даст вам шанс стать директором и поможет при открытии своего дела. Вы ведь этого хотите, не так ведь?

Украсть трактор

Если вы успели завести семью и детей , то возможно вы хотите тихой и безбедной жизни в стране со стабильной экономикой. Задумываетесь над переездом/иммиграцией в Канаду, США, Швейцарию или даже Австралию. У вас есть отличные навыки и востребованная профессия. Вам не придётся начинать с мойщика посуды. А, например, с Senior Java Developer. Да ещё и, вероятно, на большую зарплату. Не так уж и плохо.

Посмотреть весь мир, кроме Парижа и не умирать

У вас ещё нет семьи, и вы хотите попутешествовать . Upwork – ваше все. Найдите себе заказчика, обговорите с ним рейты – от $20/час, берите ноутбук и вперёд. Вашей зарплаты должно хватить, чтобы нормально жить в любой стране мира. Почему бы не приступить к исполнению своей мечты прямо сейчас? Программирование – это комфортно.

Основы программирования
Азы программирования, основные термины и понятия

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

Урок 3. Первая программа

Выбор языка программирования. Подготовка браузера. Программа «Hello, world!».

Урок 4. Переменные

Установка удобного редактора кода. Знакомство с переменными. Простой калькулятор.

Урок 5. Типы данных

Типы данных. Операции с разными типами данных. Преобразование типов данных.

Урок 6. Алгоритмы и блок-схемы

Алгоритмическое мышление. Визуальные блок-схемы.

Урок 7. Оператор ветвления if

Выбор вариантов в программе. Оператор ветвления if. Игра в загадки.

Урок 8. Логические операции

Комплексные условия выбора. Логические И, ИЛИ. Игра «Злые птицы».

Урок 9. Циклы do, while

Циклы do и while. Игра в русскую рулетку.

Урок 10. Цикл for

Цикл for. Финансовый калькулятор.

Урок 11. Массивы

Большие наборы данных и массивы. Игра в рулетку.

Урок 12. Функции

Функции. Подготовка к написанию игры «Black Jack (21)».

Урок 13. Игра «Black Jack». Часть 1

Написание полноценной игры. Основа – раздача карт и подсчет очков.

Урок 14. Игра «Black Jack». Часть 2

Завершение написания игры. Определение результатов и победителя.

Урок 15. Карьера программиста

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

Git. Быстрый старт
Основы работы с Git

Видеокурс дает опыт командной разработки с использованием Git. Учит «с нуля» организовать совместное хранилище кода и эффективно его использовать. Студенты осваивают git-клиенты с графическим и консольным интерфейсом, учатся контролировать выпуск версий программы и «откатываться» к предыдущим версиям. Подробно рассматриваются распространенные ошибки командной разработки: при слиянии веток, создании commit-ов, хранении исполняемых файлов в репозитории.

Урок 1. Назначение и возможности

Узнаем, зачем нужен git и какие возможности он открывает для программистов.

Урок 2. Базовые операции

Создаем хранилище кода, доступное всем участникам разработки по сети. Осваиваем базовые операции: Clone, Commit, Push, Pull.

Урок 3. Откат изменений кода

Учимся откатывать изменения в коде с помощью git. Осваиваем операции Discard, Revert, Reset.

Урок 4. Работа с ветками

Работа с ветками.
Параллельно разрабатываем несколько версий программы. Осваиваем операции Add branch, Checkout, Merge.

Урок 5. Конфликты

Учимся разрешать конфликты при слиянии веток.

Урок 6. Распространенные ошибки. Часть 1

Боязнь создания новых веток. Хранение исполняемых файлов в репозитории.

Урок 7. Распространенные ошибки. Часть 2

Ошибки при работе с ветками. Ошибки при создании commit-ов.

Урок 8. Pull Request. Работа с Open-Source-проектами

Осваиваем Pull Request-ы на примере работы с Open-Source-проектами.

Урок 9. Pull Request. Сдача домашних заданий.

Сдача домашних заданий в GeekBrains с помощью Pull Request.

Урок 10. Консольный git-клиент. Базовые операции

Осваиваем базовые операции в консольном git-клиенте.

Урок 11. Консольный git-клиент. Работа с ветками

Учимся работать с ветками в консольном git-клиенте.

Урок 12. Работа с версиями программы

Учимся выпускать различные версии программного продукта с использованием git.

Урок 13. Итоги

Подводим итоги проделанной работы.

Java. Быстрый старт
Основы языка Java на примере разработки небольшой игры

Видеокурс познакомит вас с одним из самых популярных, красивых, широко применяемых, надёжных языков программирования – Java. В первой части вы научитесь основам языка и научитесь писать простые консольные приложения. Далее мы расскажем, как можно буквально за несколько минут создать простую игру с графическим интерфейсом и не использовать при этом сторонние библиотеки. Цель курса: раскрыть некоторые возможности языка и показать, что Java – это просто и увлекательно. После успешного прохождения курса вы сможете использовать созданную нами модель для разработки собственных игр. Для эффективного освоения материала требуется минимальный опыт программирования, поэтому совсем начинающим разработчикам мы рекомендуем сначала пройти бесплатный онлайн-курс “Основы программирования”.

Урок 1. Знакомство с языком Java

Краткое описание языка; установка необходимых инструментов разработки; написание первой программы.

Урок 2. Переменные, типы данных, ветвления

Описание фундаментальных понятий языка Java на примере простого консольного калькулятора.

Урок 3. Циклы; игра «Угадай число»

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

Урок 4. Методы

Демонстрация методов на примере усовершенствования игры «Угадай число».

Урок 5. Завершаем разработку игры «Угадай число»

Доводим код игры до конечного варианта.

Урок 6. Разработка игры «Поймай каплю». Часть 1

Создаём окно игры.

Урок 7. Разработка игры «Поймай каплю». Часть 2

Учимся загружать и рисовать картинки; реализуем игровой цикл.

Урок 8. Разработка игры «Поймай каплю». Часть 3

Ловим события мыши и заканчиваем разработку игры.

Урок 9. Итоги

Собираем проект в один jar-файл, чтобы его было удобно запускать без среды разработки; подводим итоги.

Курс для начинающих разработчиков, тех, кто хочет быстро освоить основы объектно-ориентированного программирования (ООП) и научиться создавать собственные проекты. Главной особенностью курса является сочетание изучения теоретических основ языка Java и практических онлайн-тренировок под руководством наставника.

Урок 1. Введение в Java

  1. Как работает Java. JVM. Общие принципы. Инструменты.
  2. Hello, world!
  3. Переменные и типы данных.
  4. Методы и их применение.
  5. Условные операторы.

Урок 2. Циклы и массивы

  1. Понятие циклов. Цикл while;
  2. Циклы for, foreach;
  3. Понятие массива;
  4. Разбор решения домашнего задания.

Урок 3. Практикум. «Крестики-нолики» в процедурном стиле

  1. Разработка алгоритма;
  2. Создание логики;
  3. Создание логики противника-компьютера;
  4. Разбор домашнего задания.

Урок 4. Введение в ООП

  1. Что такое ООП и зачем он нужен? Основные понятия;
  2. Создание классов и объектов;
  3. Инкапсуляция;
  4. Наследование;
  5. Абстрактные классы, интерфейсы и полиморфизм;
  6. Разбор домашнего задания.

Урок 5. Память, хранение данных

  1. Хранение данных в Java: стек, куча;
  2. Сборка мусора;
  3. Строковые классы, пулы строк;
  4. Разбор домашнего задания.

Урок 6. Графические интерфейсы

  1. Библиотека Swing и другие графические библиотеки. Основы Swing;
  2. Менеджеры размещения и выравнивание элементов;
  3. События в Swing. Меню и диалоговые окна;
  4. Разбор домашнего задания.

Урок 7. Практикум. «Крестики-нолики» в ООП

  1. Определение классов и GUI;
  2. Разработка логики, часть 1;
  3. Разработка логики, часть 2;
  4. Разбор домашнего задания.

Курс для тех, кто хочет укрепить свои знания в Java. На курсе ученики осваивают теорию и параллельно под руководством преподавателя с нуля разрабатывают полноценный проект на Java, получая таким образом практический опыт применения сложных объектно-ориентированных концепций, характерных для языка. Перед прохождением курса рекомендуется освоить курс для новичков: "Java. Уровень 1".

Урок 1. Объектно-ориентированное программирование Java

Углубленное изучение вопросов ООП в Java: основные принципы ООП, абстрактные классы, интерфейсы.

Урок 2. Исключения

Концепция обработки исключений, её сравнение с традиционным механизмом обработки ошибок, блок try-catch-finally, типы исключений, стандартные исключения в Java и их роль, выброс исключения из метода

Урок 3. Коллекции

Виды контейнеров в Java: List, Map, Set. Основные реализации и приемы использования, проход по элементам коллекции, сравнение и сортировка элементов коллекции

Урок 4. Продвинутые вопросы создания графического интерфейса

Создание собственных элементов управления. Работа с графикой. Обработка событий

Урок 5. Многопоточность

Потоки в Java, способы создания и управления состояниями потоков, основные проблемы при работе с потоками и синхронизация.

Урок 6. Работа с сетью

Сокеты. Написание простого эхо-сервера и консольного клиента.

Урок 7. Написание сетевого чата. Часть I

Написание клиентской и серверной части чата. Многопоточная обработка клиентских подключений.

Урок 8. Написание сетевого чата. Часть II

Разработка интерфейса для клиентской части. Авторизация. Механизмы взаимодействия клиента и сервера.

Алгоритмы и структуры данных на Java. 1 месяц.
Работа с массивами, списками, деревьями, графами, хеш-таблицами, стеком и очередью

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

Урок 1. Общие сведения об алгоритмах и структурах данных

Введение в алгоритмы и структуры данных

Урок 2. Массивы и сортировка

Работа с массивами и способов их сортировки.

Урок 3. Стек и очередь

Обзор структуры данных, стек, очередь и приоритетная очередь.

Урок 4. Связанные списки

Учимся создавать и использовать списки.

Урок 6. Деревья

Рассмотрим работу с двоичными деревьями.

Урок 7. Графы

Рассмотрим работу с одной из самых гибких и универсальных структур.

Урок 8. Хеш-таблицы

Быстрый поиск и вставка с помощью хеш-таблиц.

Основы баз данных. 20 уроков.
Проектирование БД и запросы SQL

Базы данных (БД) - это системы хранения и обработки данных, для доступа к которым используется язык SQL (Structured Query Language). Любой современный сайт, игра или настольное приложение нуждаются в хранении данных. На данный момент существует множество различных систем управления базами данных (СУБД), самой популярной является MySQL. “Основы баз данных” - это 20 интенсивных видео-уроков (по 10 минут), где мы вместе пройдём все этапы проектирования БД на примере интернет-магазина с использованием языка запросов SQL. После этого курса вы сможете использовать различные базы данных, такие как MS SQL и Postgre Sql, так как синтаксис языка SQL для них практически не отличается.

Урок 1. Реляционные базы данных

Чем отличается БД от СУБД; какие базы данных называются реляционными; обзор современных СУБД.

Урок 2. Установка СУБД

Установка СУБД MySql и графического приложения Mysql Workbench.

Урок 3. Проектирование базы данных, нормальные формы

Проектирование данных в Excel; нормальные формы; первичный ключ.

Урок 4. SQL-команда CREATE

Создание таблиц в графическом интерфейсе MySql Workbench; команда CREATE; типы данных; работа в консоли.

Урок 5. SQL-команда INSERT

Заполнение таблиц данными с помощью графического интерфейса; команда INSERT; AUTO INCREMENT.

Урок 7. SQL-команды DISTINCT, ORDER BY, LIMIT

Получение и фильтрация данных с помощью SQL-команд DISTINCT и LIMIT; сортировка с помощью команды ORDER BY.

Урок 9. Согласованность данных

Понятие согласованности или консистентности данных.

Урок 10. Внешний ключ

Понятие внешнего ключа и ограничений на значения столбцов; FOREIGN KEY CONSTRAINTS.

Урок 11. Создание таблиц с отношением “многие ко многим”

Добавление корзины в базу данных интернет-магазина.

Урок 12. Составной первичный ключ

Использование составного первичного ключа при проектировании таблицы с отношением “многие ко многим”.

Урок 13. Объединение данных из нескольких таблиц

Получение данных из нескольких взаимосвязанных таблиц; несостоятельность подхода с использованием нескольких SELECT-ов.

Урок 14. Оператор INNER JOIN

Объединение данных из нескольких таблиц с помощью оператора INNER JOIN.

Урок 15. Операторы LEFT JOIN, RIGHT JOIN

Объединение данных из нескольких таблиц с помощью операторов LEFT JOIN и RIGHT JOIN.

Урок 16. Оператор UNION

Объединение результатов нескольких SQL-запросов с помощью оператора UNION.

Урок 17. Агрегирующие функции

Агрегирующие функции COUNT, SUM, MIN, MAX.

Урок 18. Оператор GROUP BY

Группировка выбранного набора строк с использованием оператора GROUP BY.

Урок 19. Индексы

Фильтрация в GROUP BY с использованием HAVING; увеличение скорости выполнения запросов с использованием индексов.

Урок 20. Транзакции

Понятие транзакции; оператор TRANSACTION; требования ACID к транзакционной системе.

Java. Уровень 3. 2 месяца.
Профессиональная разработка программного обеспечения

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

Урок 1. Обобщения

Что такое обобщения, обобщенные классы, методы и интерфейсы, наследование обобщенных классов, ограничения при работе с обобщениями

Урок 2. Базы данных

Реляционные базы данных, язык запросов SQL. Операторы SELECT, INSERT, UPDATE, DELETE. Подключение к базе через JDBC, отправка запросов и обработка результатов

Урок 3. Средства ввода-вывода

Обзор средств ввода-вывода. Байтовые, символьные, буферизированные потоки. Сетевое взаимодействие, сериализация/десериализация объектов

Урок 4. Многопоточность. Часть I

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

Урок 5. Многопоточность. Часть II

Классы для работы с многопоточностью, Concurrent collections, разбор практических примеров

Урок 6. Обзор средств разработки

Логирование. Тестирование с использованием JUnit, написание тестов, класс Assert

Урок 7. Reflection API и аннотации

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

Стажировка в GeekBrains. 2 месяца.
В формате вебинаров

Во время стажировки студентам предстоит поработать в режиме удаленной занятости над Open Source-проектом либо стартапом. Студентам будет предложено выбрать один из набора доступных для разработки проектов. Студенты научатся работать в команде, коммуницировать с другими разработчиками, product- и project-менеджерами, дизайнерами, изучат гибкие методологии, фреймворк SCRUM, освоят принципы дистанционной работы. Результат стажировки - умение работать в команде, пополнение портфолио, возможность указать работу над проектом в качестве профильного опыта работы в резюме. Стажировка проходит в формате дистанционной работы с частичной занятостью, еженедельными встречами-статусами с преподавателем в формате вебинара.

Урок 1. Знакомство, выбор проекта

Какие роли бывают в разработке. Product Manager, Project Manager, разработчик, дизайнер. Что такое MVP. Архитектура современного сервиса. Как разработчики взаимодействуют между собой. REST API, Web Socket. Backend, Frontend, мобильные приложения. Микросервисная архитектура. Основы удаленной работы. Запись в команды.

Урок 2. Методологии разработки

Обзор методологий. Каскад (водопад), Agile-манифест, Канбан, Скрам. Где и для чего применяются. Смешанные методологии.

Урок 3. Методология SCRUM

Работа по SCRUM. Планирование спринта. Причесывание бэклога (backlog grooming). Цель спринта. Инкремент. Гибкая методология в условиях дистанционной работы. Таск-трекеры (Trello, Favro)/

Урок 4. User Story Mapping

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

Урок 5. Ответственность, мотивация, личностный рост

Чем и как мотивировать себя. Какие уровни мотивации бывают. Как не сгореть на работе. И как не забить на работу.

Урок 6. Написание резюме

Как написать резюме, чтобы HR его не отсеял. Как заинтересовать работодателя. Как продемонстрировать навыки, полученные в учебе, если профильного опыта работы пока еще нет.

Урок 7. Предварительное подведение итогов, подготовка к защите проекта

Разбор студенческих резюме. Предварительное подведение итогов. Немного о стартапах, монетизации, инвесторах.

Урок 8. Подведение итогов, демонстрация выпускного проекта

Демонстрация рабочего прототипа студентами. Обсуждение полученных результатов. Обратная связь от преподавателя. Напутствие.