Курс для middle- и senior-разработчиков, которые хотят стать тимлидами
Новичком быть просто: все новое и интересное, море информации, но как быть уже прокаченным девелоперам? Мы тоже задавали себе этот вопрос и просто точечно обучали наших разработчиков, делая их мощными тимлидами.
В нашем понимании тимлид — это не просто крутой программист, но и тот, кто умеет аккумулировать свои знания, обучать команду и выстраивать работу в ней, понимает продукт и работает от бизнес-целей. Тут важны и hard, и soft skills, и эмоциональный интеллект. Поэтому мы собрали весь свой 14-летний опыт работы над сложными сервисами и высоконагруженными сайтами и создали 6-ти месячный курс именно тех, кто хочет вырасти и систематизировать свои знания. Договорились с Geekbrains, и теперь именно там можно пройти обучение. Второй поток стартует уже совсем скоро — 24 декабря, а тут должен быть призыв к действию, поэтому просто записывайтесь на курс: https://proglib.io/w/9236cebf
На связи была команда AGIMA!
Новичком быть просто: все новое и интересное, море информации, но как быть уже прокаченным девелоперам? Мы тоже задавали себе этот вопрос и просто точечно обучали наших разработчиков, делая их мощными тимлидами.
В нашем понимании тимлид — это не просто крутой программист, но и тот, кто умеет аккумулировать свои знания, обучать команду и выстраивать работу в ней, понимает продукт и работает от бизнес-целей. Тут важны и hard, и soft skills, и эмоциональный интеллект. Поэтому мы собрали весь свой 14-летний опыт работы над сложными сервисами и высоконагруженными сайтами и создали 6-ти месячный курс именно тех, кто хочет вырасти и систематизировать свои знания. Договорились с Geekbrains, и теперь именно там можно пройти обучение. Второй поток стартует уже совсем скоро — 24 декабря, а тут должен быть призыв к действию, поэтому просто записывайтесь на курс: https://proglib.io/w/9236cebf
На связи была команда AGIMA!
#вопросы_с_собеседований
Напишите однопоточную программу, которая заставляет коллекцию выбросить ConcurrentModificationException.
Напишите однопоточную программу, которая заставляет коллекцию выбросить ConcurrentModificationException.
2020 бросил вызов каждому человеку, бизнесу, государству. Впереди 2021 год и новые изменения. Как отбросить страх перед глобальными вызовами? Получить новый импульс? QIWI и Магнит объединились, чтобы напомнить о важной роли технологий в трансформации каждого из нас, а также в развитии бизнеса и общества.
17 декабря в 16:00 состоится бесплатный онлайн митап #MGNTQIWI «Новый мир: как технологии влияют на человека и общество» с участием Евгения Кузнецова – футуролога, руководителя московского отделения Университета Сингулярности, генерального директора ООО «Орбита Капитал Партнерз». Евгений расскажет, как оставаться на гребне цифровой волны, не отставать от трендов и справляться с вызовами технологической эпохи.
Регистрируйтесь по ссылке https://mgntqiwi.ru и присоединяйтесь к бесплатной лекции и Q&A сессии 17 декабря в 16:00.
ИЗМЕНЕНИЯ – вот о чем пойдет речь в рамках митапа. Трансформируется все, а значит, нужно и нам.
Давайте меняться вместе!
17 декабря в 16:00 состоится бесплатный онлайн митап #MGNTQIWI «Новый мир: как технологии влияют на человека и общество» с участием Евгения Кузнецова – футуролога, руководителя московского отделения Университета Сингулярности, генерального директора ООО «Орбита Капитал Партнерз». Евгений расскажет, как оставаться на гребне цифровой волны, не отставать от трендов и справляться с вызовами технологической эпохи.
Регистрируйтесь по ссылке https://mgntqiwi.ru и присоединяйтесь к бесплатной лекции и Q&A сессии 17 декабря в 16:00.
ИЗМЕНЕНИЯ – вот о чем пойдет речь в рамках митапа. Трансформируется все, а значит, нужно и нам.
Давайте меняться вместе!
import java.util.ArrayList;
import java.util.List;
public class Main
{
public static void main(String[] args) {
List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
for (Integer integer : list) {
list.remove(1);
}
}
}
import java.util.List;
public class Main
{
public static void main(String[] args) {
List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
for (Integer integer : list) {
list.remove(1);
}
}
}
#вопросы_с_собеседований
Что такое «сервлет»?
Что такое «сервлет»?
Сервлет является интерфейсом, реализация которого расширяет функциональные возможности сервера. Сервлет взаимодействует с клиентами посредством принципа запрос-ответ. Хотя сервлеты могут обслуживать любые запросы, они обычно используются для расширения веб-серверов.
Большинство необходимых для создания сервлетов классов и интерфейсов содержатся в пакетах javax.servlet и javax.servlet.http.
Основные методы сервлета:
☕️ public void init(ServletConfig config) throws ServletException запускается сразу после загрузки сервлета в память;
☕️ public ServletConfig getServletConfig() возвращает ссылку на объект, который предоставляет доступ к информации о конфигурации сервлета;
☕️ public String getServletInfo() возвращает строку, содержащую информацию о сервлете, например: автор и версия сервлета;
☕️ public void service(ServletRequest request, ServletResponse response) throws ServletException, java.io.IOException вызывается для обработки каждого запроса;
☕️ public void destroy() выполняется перед выгрузкой сервлета из памяти.
Большинство необходимых для создания сервлетов классов и интерфейсов содержатся в пакетах javax.servlet и javax.servlet.http.
Основные методы сервлета:
☕️ public void init(ServletConfig config) throws ServletException запускается сразу после загрузки сервлета в память;
☕️ public ServletConfig getServletConfig() возвращает ссылку на объект, который предоставляет доступ к информации о конфигурации сервлета;
☕️ public String getServletInfo() возвращает строку, содержащую информацию о сервлете, например: автор и версия сервлета;
☕️ public void service(ServletRequest request, ServletResponse response) throws ServletException, java.io.IOException вызывается для обработки каждого запроса;
☕️ public void destroy() выполняется перед выгрузкой сервлета из памяти.
#вопросы_с_собеседований
В каком случае требуется переопределять метод service()?
В каком случае требуется переопределять метод service()?
Метод service() переопределяется, когда необходимо, чтобы сервлет обрабатывал все запросы (и GET, и POST) в одном методе.
Когда контейнер сервлетов получает запрос клиента, то происходит вызов метода service(), который в зависимости от поступившего запроса вызывает или метод doGet() или метод doPost().
Когда контейнер сервлетов получает запрос клиента, то происходит вызов метода service(), который в зависимости от поступившего запроса вызывает или метод doGet() или метод doPost().
Object-Oriented Data Structures Using Java (2020)
Авторы: Nell Dale, Daniel T. Joyce, Chip Weems
Количество страниц: 694
Данная книга - важный ресурс для студентов, изучающих структуры данных с использованием языка программирования Java. В ней представлены как традиционные, так и самые современные темы из структур данных с упором на решение задач и объектно-ориентированное проектирование программного обеспечения.
Скачать книгу
Авторы: Nell Dale, Daniel T. Joyce, Chip Weems
Количество страниц: 694
Данная книга - важный ресурс для студентов, изучающих структуры данных с использованием языка программирования Java. В ней представлены как традиционные, так и самые современные темы из структур данных с упором на решение задач и объектно-ориентированное проектирование программного обеспечения.
Скачать книгу
#вопросы_с_собеседований
Что такое «абсолютный путь» и «относительный путь»?
Что такое «абсолютный путь» и «относительный путь»?
Абсолютный (полный) путь — это путь, который указывает на одно и то же место в файловой системе, вне зависимости от текущей рабочей директории или других обстоятельств. Полный путь всегда начинается с корневого каталога.
Относительный путь представляет собой путь по отношению к текущему рабочему каталогу пользователя или активного приложения.
Относительный путь представляет собой путь по отношению к текущему рабочему каталогу пользователя или активного приложения.
#вопросы_с_собеседований
Что такое «фикстуры»?
Что такое «фикстуры»?
Банк ВТБ проходит этап цифровой трансформации. Ребята работают в кросс-функциональных командах, в каждой из которых собрано максимум компетенций для создания лучших цифровых продуктов. Никаких длительных согласований — ответственность за продукт перед клиентом и руководством полностью несет команда и ее лидер. Это позволяет реализовывать смелые проекты в кратчайшие сроки. Больше проектов – больше шансов проявить себя и построить карьеру!
Сейчас Банк ВТБ в поиске опытных специалистов:
в Москве: Java разработчик
в Санкт-Петербурге: Java разработчик
в Самаре: Java разработчик
в Нижнем Новгороде: Java разработчик
Что нужно делать:
- Разрабатывать системы с нуля или дорабатывать новый функционал.
- Чаще всего это legacy 20-30%, остальное — новый функционал.
- Команда от 7 человек и больше, в зависимости от масштаба системы.
Что требуется:
- опыт разработки на Java от 2 лет;
- уверенное знание Java 8 (Core, Collections, Concurrency);
- опыт работы со Spring Framework, Spring Boot, Spring Security;
- опыт работы с Hibernate;
- уверенное знание SQL;
- опыт работы с микро-сервисной архитектурой;
- понимание методик unit-тестирования;
- умение работать в команде
Что вы получите:
- фокус на развитие: hard skills в рамках современного технологического стека.
- интересные задачи: более 150 крупных проектов и свыше 12 000 внедрений в год. Каждая задача — реальная потребность бизнеса
- карьерный рост: возможность выбора направления для роста и развития. 1100 команд — найдите свою по духу и задачам.
Оставляйте отклик и присоединяйтесь к команде, которая создает банк будущего для миллионов людей!
Сейчас Банк ВТБ в поиске опытных специалистов:
в Москве: Java разработчик
в Санкт-Петербурге: Java разработчик
в Самаре: Java разработчик
в Нижнем Новгороде: Java разработчик
Что нужно делать:
- Разрабатывать системы с нуля или дорабатывать новый функционал.
- Чаще всего это legacy 20-30%, остальное — новый функционал.
- Команда от 7 человек и больше, в зависимости от масштаба системы.
Что требуется:
- опыт разработки на Java от 2 лет;
- уверенное знание Java 8 (Core, Collections, Concurrency);
- опыт работы со Spring Framework, Spring Boot, Spring Security;
- опыт работы с Hibernate;
- уверенное знание SQL;
- опыт работы с микро-сервисной архитектурой;
- понимание методик unit-тестирования;
- умение работать в команде
Что вы получите:
- фокус на развитие: hard skills в рамках современного технологического стека.
- интересные задачи: более 150 крупных проектов и свыше 12 000 внедрений в год. Каждая задача — реальная потребность бизнеса
- карьерный рост: возможность выбора направления для роста и развития. 1100 команд — найдите свою по духу и задачам.
Оставляйте отклик и присоединяйтесь к команде, которая создает банк будущего для миллионов людей!
Фикстуры (fixtures) - состояние среды тестирования, которое требуется для успешного выполнения теста. Основная задача фикстур заключается в подготовке тестового окружения с заранее фиксированным/известным состоянием, чтобы гарантировать повторяемость процесса тестирования.
#вопросы_с_собеседований
Как получить коллекцию только для чтения?
Как получить коллекцию только для чтения?
При помощи:
Collections.unmodifiableList(list);
Collections.unmodifiableSet(set);
Collections.unmodifiableMap(map).
Эти методы принимают коллекцию в качестве параметра, и возвращают коллекцию только для чтения с теми же элементами внутри.
Collections.unmodifiableList(list);
Collections.unmodifiableSet(set);
Collections.unmodifiableMap(map).
Эти методы принимают коллекцию в качестве параметра, и возвращают коллекцию только для чтения с теми же элементами внутри.
#вопросы_с_собеседований
Какие аннотации фикстур существуют в JUnit?
Какие аннотации фикстур существуют в JUnit?
@BeforeClass - определяет код, который должен единожды выполниться перед запуском набора тестовых методов.
@AfterClass - код, выполняемый один раз после исполнения набора тестовых методов.
@Before - определяет код, который должен выполняться каждый раз перд запуском любого тестовым методом.
@After - код, выполняемый каждый раз после исполнения любого тестового метода.
@AfterClass - код, выполняемый один раз после исполнения набора тестовых методов.
@Before - определяет код, который должен выполняться каждый раз перд запуском любого тестовым методом.
@After - код, выполняемый каждый раз после исполнения любого тестового метода.
#вопросы_с_собеседований
Какие режимы доступа к файлу есть у RandomAccessFile?
Какие режимы доступа к файлу есть у RandomAccessFile?
40 лучших курсов по математике для программистов
Программистам нужно развивать логическое мышление и сообразительность, поэтому мы подобрали для вас 40 лучших курсов по математике.
https://proglib.io/p/best-math-courses
Программистам нужно развивать логическое мышление и сообразительность, поэтому мы подобрали для вас 40 лучших курсов по математике.
https://proglib.io/p/best-math-courses