admin / 23.08.2018
Exadel работает на рынке ИТ с 1998 года и уже более 20 лет занимается разработкой как собственных программных продуктов, так и заказного программного обеспечения для клиентов всех размеров: от стартапов до компаний из списка Fortune 500. Основным направлением деятельности компании также является миграция, оптимизация и разработка корпоративных приложений, ИТ-консалтинг, тестирование и контроль качества.
Exadel предлагает пройти обучение по одной из самых востребованных специализаций в IT – Java developer.
Java уже в течение многих лет занимает первые строчки рейтингов языков программирования по популярности и востребованности. На Java создается множество программных продуктов, а позиция Java-разработчика одна из самых высокооплачиваемых.
Зачисление на стажировку осуществляется по результатам прохождения интервью. Успешно освоившим программу тренинга предоставляется возможность начать карьеру в компании Exadel.
Содержание стажировки:
Условия:
Мы ожидаем от Вас:
Если у вас есть огромное желание стать Java разработчиком, то мы готовы делиться своим опытом и помочь вам начать свою профессиональную карьеру с нами!
Присылайте свое резюме на адрес zvasilenko@exadel.com!
Как начать зарабатывать программированием на Java? Прочитать 100500 книг, посетить сотни семинаров? А как же опыт? Подобные вопросы всегда мучают новичков. Давайте разберем, как сделать шаг в профессию.
Содержание
Любая фирма, в которую вы отправляете резюме, хочет, чтобы сотрудники приносили ей пользу. Формула банальная, но в ней вся суть рынка: чтобы получить работу, нужно быть полезным фирме.
Вот есть, например, «Контора 1» и «Контора 2». «Контора 1» пишет в вакансии, что готова обучить начинающего программиста и потом взять на работу. «Контора 2» обучать не хочет, мол, приходите и сразу начинайте кодить (но перед этим покажите уже написанные проекты, конечно же). Какую фирму вы как новичок выберете?
Очень соблазнительно выглядит предложение «Конторы 1», но я бы советовал избегать таких вакансий: в этих фирмах набирают большую учебную группу кандидатов (20–30 человек) и выбирают лучшего. Все обучение сводится к самостоятельному поиску материала и решению задач, поскольку в реальности никто не заинтересован в получении вами знаний – фирме это просто не выгодно. В итоге, если вы не справляетесь с такой формой обучения, вы не получаете ни работу, ни знания, только потерянное время, которое могли бы потратить на подготовку в реальной работе. С этой точки зрения вакансия «Конторы 2» выглядит более честной.
Суммирая все сказанное, скорректирую нашу формулу: чтобы получить работу, нужно быть полезным фирме здесь и сейчас.
Ни одна компания не пишет проект с нуля, поэтому новичку на руку то, что создание современных программ основано на различных библиотеках и фреймворках. Это тот самый случай, когда готовые решения применять не зазорно, а очень даже необходимо. Кроме того, в начале карьеры нет необходимости глубоко разбираться, как работают популярные библиотеки, нужно только уметь подключать и собирать их вместе.
Если вы сделаете простые приложения с использованием фреймворков и зальете их на GitHub, этого будет достаточно, чтобы доказать свою полезность фирме и найти первую работу.
Предлагаю вам список того, что нужно знать Junior Java Developer.
1. Базовый синтаксис языка Java
Без основ ничего не сделаешь, поэтому в первую очередь нужно освоить операторы условия, циклы, массивы, классы и объекты, исключения. Примеры заданий можно найти здесь.
Книга: «Изучаем Java» Кэти Сьерра.
2. Структуры данных и простые алгоритмы
Основной ценностью в программировании являются данные, причем они хранятся не хаотично, а в структурах. Поэтому нужно очень скрупулезно подойти к этой теме, выучив основные структуры и алгоритмы для работы с данными. Всегда держите в голове, что неправильно выбранная структура может на корню испортить программу.
Знание структур и алгоритмов здорово выручит вас и на собеседованиях, где любят давать задачки на применение того или иного алгоритма для работы со структурами, например, отсортировать связанный список.
Книга: «Алгоритмы. Построение и анализ» Томаса Кормена.
3. SQL (базы данных)
Трудно найти приложение, которое бы не использовало базу данных, поэтому этот инструмент программирования – must-have в арсенале любого разработчика. Поставьте сервер базы данных PostgreSQL и потренируйтесь писать запросы.
Книга: «Head First SQL» Линн Бейли.
4. Servlet, JSP
Основная область применения Java – корпоративный сектор, для которого разрабатывают серверные приложения. Основа серверного приложения – это Servlet + JSP.
Книга: «Head First Servlet and JSP».
5. Hibernate
Первый фреймворк в списке. Позволяет извлекать данные из базы. Используется повсеместно.
Книга: «Hibernate in Action» Гэвина Кинга и Кристиана Бауэра.
6. Spring
Этот фреймворк, как вирус, постоянно совершенствуется и адаптируется к любым бизнес-требованиям.
На нем можно написать все, что делает его универсальным и в то же время гибким средством разработки. Начните со Spring Boot – этот инструмент будет вашим основным орудием труда.
Книга: «Pro Spring» Роба Харропа.
7. Maven
Мы программисты, поэтому все процессы должны быть автоматизированы по максимуму. Инструменты для сборки, тестирования и интеграции будут повседневными соратниками в вашей работе.
8. Git
Программы давно не пишут в одиночку, поэтому используйте этот гибкий инструмент для командной работы.
Каждый хочет получить результат быстро, но вынужден вас огорчить: тут нельзя торопиться. Если заниматься ежедневно и не бросать дело на полпути, на освоение программы-минимум должно хватить года.
Кажется трудным, но осилит дорогу идущий, так что начинайте смело! Как и на любом новом пути, легче всего его пройти, если вас поведет опытный проводник. Наиболее быстрый способ овладеть знаниями – заниматься с индивидуальным ментором.
.
Junior’ом обычно называют разработчика, который только начинает серьезно работать в определенной области технологий. У такого разработчика есть знания, позволяющие ему работать над реальным проектом, но очень мало (или нет) опыта такой разработки. Поэтому, зачастую в технических аспектах он советуется с более опытным разработчиком. Накопив достаточно знаний и опыта Junior становится mid-level разработчиком.
Если говорить о Junior Java Developer’е, то необходимы такие знания:
Обычно для Java Junior’а не обязательно знание какой-либо конкретной технологии или фреймворка (например веб-сервисов или Spring). Достаточно знать зачем та или иная технология нужна, какие задачи с помощью нее решают, преимущества/недостатки в сравнении с похожими технологиями. Junior детально знакомится с такими технологиями/фреймворками в процессе работы над очередным проектом.
Тест, необходимый для прохождения любому, кто имеет дело с программированием. Здесь собраны довольно элементарные вопросы по булевой алгебре, системам исчисления (особенно двоичной и шестнадцатиричной), простым алгоритмам.
Тест содержит достаточно большое количество вопросов, но не только по синтаксису языка так и по практическому использованию той или иной возможности. Вопросы теста преимущественно простые, но есть и довольно «хитрые» вопросы, которые проверяют понимание.
Знание ООП парадигм на базовом уровне безусловно необходимо для Junior’а.
Данный тест ставит себе задачу это проверить. Вопросы в основном теоретического плана и требуют соответствующего уровня подготовки.
Тест посвящен ООП возможностям Java.
Проверяет знание вопросов которые часто задают на собеседованиях Junior’ам: «как реализовать множественное наследование в Java», «в чем отличие абстрактного класса от интерфейса» и т.п. Содержит в основном практические примеры и неплохо дополняет предыдущий тест по теоретическому ООП.
На данный момент, базы данных используются в большинстве промышленных приложений. Поэтому эти знания довольно востребованы и Java Junior’у сейчас нужно иметь представление о JDBC и SQL. Тест проверяет базовые знания SQL и наиболее используемые его возможности.
Тематика статьи предлагается администрации и либо принимается либо отвергается с предложением альтернативной. Тематика должна касаться предметной области. Это требование проверяет умение Junior’а быстро вникнуть в суть проблемы, а также способность излагать мысли последовательно и методично. Как вариант можно предложить на рассмотрение администрации 3-4 темы для статьи, а администрация предложит для написания одну из них. Написанная вами статья не должна быть ранее опубликова на других ресурсах.
Необходимость составления вопросов преследует ту же цель что и написание статьи: умение аналитически подходить к изучению нового, отделять главное от второстепенного. Тематики вопросов также согласовываются с администрацией (это нужно так как в некоторых тестах довольно много вопросов и при добавлении еще одного высока вероятность, что похожий вопрос уже есть).
Важно: Вопросы насчет статьи можно задавать в комментариях на странице Вашей квалификации (не перепутайте с публичной страницей описания), на которую можно зайти из ссылки на профиле в блоке Квалификации.
Ждем Ваших комментариев и отзывов.
Проработала почти 7 лет в инфраструктуре, выросла с позиции младшего специалиста до руководителя отдела. Полностью белая компания, в которой за 20 лет ни разу не было задержки зарплаты или годовой премии. Основная услуга — проектирование и разработка корпоративного ПО, до 2014 года — преимущественно заказного, последние пару лет — крен в сторону консалтинга и продуктовых разработок. Компания культивирует гибкий, вдумчивый подход, нацеленный на решение проблем клиента, но у всех сильных сторон есть сопутствующие минусы. Гибкость. Здесь есть все плюсы гибкого графика — от свободного времени прихода и ухода до возможности работать из декрета. Но это же часто означает, что народ не слишком дисциплинирован, может опаздывать на встречи и вольно обращаться со сроками. Вдумчивость.
Обстоятельный подход к делу, ставка на осмысленность, стремление докопаться до сути — то, что подкупает специалистов, особенно пришедших из компаний, где «работают, не поднимая головы и не задавая вопросов». Но нередко это оборачивается затягиванием обсуждений, повторными проходами по одному и тому же месту и снижением эффективности. Ориентированность на клиента. Для решения проблемы клиента нужно глубоко погрузиться в его ситуацию и начать разбираться во внутренней кухне не хуже самого заказчика. С таким подходом компания в 200–250 человек не может потянуть больше 5–7 крупных клиентов с масштабными задачами. Отсюда — все риски малой клиентской базы и зацикленность на контекстах отдельных компаний. Кому подойдет: Тем, кому интересно попробовать себя в смежных областях, развиваться из I- в T-и M-специалистов: компания позитивно относится к «горизонтальному» развитию, есть примеры, когда разработчики переходили в аналитиков, а аналитики делали шаг в сторону маркетинга или архитектурного проектирования. Можно включаться во внутренние проекты и развивать свою или смежные специализации. Тем, кому важно приносить пользу клиенту: решать реальные задачи, глубоко погружаться в проблематику компании-клиента и предлагать решения — это сюда. Тем, для кого важна команда: равноправные, слаженные коллективы, в которых есть у кого поучиться, — определенно сильная сторона фирмы. Кому не подойдет: Тем, кто хочет щупать новые технологии — машинное обучение, блокчейн, ИИ: пока в портфолио нет проектов на совсем свежих технологиях, а если компетенции в них понадобятся, скорее всего, будут привлекаться внешние команды. Тем, кому важен дизайнерский офис с фреш-барами и массажным кабинетом: этого нет, есть самый обычный офис с кабинетной системой и небольшой кухней. Тем, кто работает в первую очередь на строчки в резюме: компания делает ставку на крупные проекты и основательный подход к делу, поэтому приходить на полгода-год, чтобы получить определенные бренды в портфолио, точно не имеет смысла.
13.12.2017
FILED UNDER : IT