В IT есть понятие грейдов — уровней, которые проходит специалист в своей карьере. Их три:
1️⃣ Джуниор или джун — начинающий специалист;
2️⃣ Мидл — программист с опытом;
3️⃣ Сеньор — специалист высокого уровня, который может обучать других.
Разобрались в карточках, что именно скрывается под каждым из понятий⬆️
Разобрались в карточках, что именно скрывается под каждым из понятий
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🫡6👌4🦄3🤓2
Напоминаем, на каких курсах начинается обучение в этом месяце ⬇️
⏺️ Разработчик 1С — обучение длится 6 месяцев, начнётся 25 июля
⏺️ Разработчик С++ — обучение длится 9 месяцев, начнётся 25 июля
⏺️ Java-разработчик — обучение длится 10 месяцев, начнётся 4 июля. Вы ещё успеете присоединиться!
⏺️ Python-разработчик — обучение длится 9 месяцев, начнётся 11 и 25 июля
⏺️ Инженер по тестированию — обучение длится 4 месяца, начнётся 11 и 25 июля
⏺️ Фронтенд-разработчик — обучение длится 10 месяцев, начнётся 4 и 18 июля
⏺️ Фулстек-разработчик — обучение длится от 16 месяцев, начнётся 18 июля
Курсы для новичков и специалистов с опытом стали ещё лучше — в большинство из них мы добавили полноценный модуль по YandexGPT, где вы сможете научиться использовать нейросеть в своей работе.
Курсы для новичков и специалистов с опытом стали ещё лучше — в большинство из них мы добавили полноценный модуль по YandexGPT, где вы сможете научиться использовать нейросеть в своей работе.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4🆒2😎2👍1
Работа в IT: как выбрать профессию и с чего начать
Вы хотите построить карьеру в сфере IT, но не знаете, с чего начать и какое направление выбрать? Боитесь высокой конкуренции и не уверены, что сможете найти работу? Присоединяйтесь к бесплатному вебинару «Как выбрать цифровую профессию по душе и начать карьеру в IT».
→ Встреча пройдет 16 июля в 19:00 по московскому времени
Практикующие эксперты из IT помогут справиться с сомнениями, ответят на ваши вопросы и расскажут:
⏺️ почему онлайн-обучение — это сложно, но эффективно;
⏺️ как заниматься, чтобы получать знания, востребованные работодателями;
⏺️ каким новичкам не страшна конкуренция в IT.
Кроме того, мы обсудим, какие навыки ценят работодатели, сколько готовы платить новичкам и как правильно откликаться на вакансии, чтобы получить оффер.
→ Зарегистрируйтесь на вебинар
Вы хотите построить карьеру в сфере IT, но не знаете, с чего начать и какое направление выбрать? Боитесь высокой конкуренции и не уверены, что сможете найти работу? Присоединяйтесь к бесплатному вебинару «Как выбрать цифровую профессию по душе и начать карьеру в IT».
→ Встреча пройдет 16 июля в 19:00 по московскому времени
Практикующие эксперты из IT помогут справиться с сомнениями, ответят на ваши вопросы и расскажут:
Кроме того, мы обсудим, какие навыки ценят работодатели, сколько готовы платить новичкам и как правильно откликаться на вакансии, чтобы получить оффер.
→ Зарегистрируйтесь на вебинар
Please open Telegram to view this post
VIEW IN TELEGRAM
🥴4🫡3❤1
Помните Савву Лебедева? Ранее он делился с нами подборками бесплатных ресурсов по C++. А теперь он принес нам еще одну интересную задачу для этого языка программирования. Время размять наши серые клеточки:
Дан непустой массив целочисленных элементов, где каждый элемент повторяется дважды, кроме одного.
Найдите этот одинокий элемент.
Идеально выполнить за линейную сложность по времени и константную сложность по памяти.
Пример 1:
Ввод: nums = [2,2,1]
Вывод: 1
Пример 2:
Ввод: nums = [4,1,2,1,2]
Вывод: 4
Пример 3:
Ввод: nums = [1]
Вывод: 1
Ограничения:
• 1 <= nums.size() <= 3 * 10^4
• -3 * 10^4 <= nums[i] <= 3 * 10^4
• Каждый элемент в массиве повторяется дважды, кроме одного: он будет единожды.
Дан непустой массив целочисленных элементов, где каждый элемент повторяется дважды, кроме одного.
Найдите этот одинокий элемент.
Идеально выполнить за линейную сложность по времени и константную сложность по памяти.
Пример 1:
Ввод: nums = [2,2,1]
Вывод: 1
Пример 2:
Ввод: nums = [4,1,2,1,2]
Вывод: 4
Пример 3:
Ввод: nums = [1]
Вывод: 1
Ограничения:
• 1 <= nums.size() <= 3 * 10^4
• -3 * 10^4 <= nums[i] <= 3 * 10^4
• Каждый элемент в массиве повторяется дважды, кроме одного: он будет единожды.
int FindSingleNumber(vector<int>& nums) {
...
}
👍11🥴3🤔2🤓2🔥1
Возвращаемся с оптимальным решением задачи из предыдущего поста от Саввы:
Такой способ позволяет решить за O(n) по времени и O(1) по памяти.
Это возможно с помощью оператора XOR — исключающее ИЛИ.
Числа состоят из байтов, а байты из битов. XOR работает с битами двух чисел и возвращает в результате третье число. Операция производится поразрядно по одному биту из каждого числа.
XOR вернёт 1, если только один бит равен 1. Получится вот так:
На примере вот такого вектора:
Изначально
В конце получился
Первое число просто присвоилось переменной
Битовые операции используются в разных трюках. Попробуйте решить эту задачу менее оптимальным способом по памяти, например с использованием множества или словаря.
int FindSingleNumber(const vector<int>& nums) {
int result = 0;
for (int n : nums) {
result ^= n;
}
return result;
}
Такой способ позволяет решить за O(n) по времени и O(1) по памяти.
Это возможно с помощью оператора XOR — исключающее ИЛИ.
Числа состоят из байтов, а байты из битов. XOR работает с битами двух чисел и возвращает в результате третье число. Операция производится поразрядно по одному биту из каждого числа.
XOR вернёт 1, если только один бит равен 1. Получится вот так:
A B C
0 0 0
1 0 1
0 1 1
1 1 0
На примере вот такого вектора:
{12, 11, 12}
рассмотрим что будет происходить. Покажем только 4 первых бита:Изначально
result
равен нулю, значит:0 ^ 12
— 0000 ^ 1100 = 1100
1100 ^ 11
— 1100 ^ 1011 = 0111
0111 ^ 12
— 0111 ^ 1100 = 1011
В конце получился
1011
, это 11 в двоичной системе исчисления.Первое число просто присвоилось переменной
result
, а далее биты другого числа вычитались из него. После второго числа в переменной было число 0111
— число 7. Если бы не условие, что все числа будут повторяться дважды, кроме одного, то наличие числа 7 в векторе всё бы испортило и превратило число назад в 0. Второе повторение того же числа (необязательно даже последовательное) отменяет первую операцию. А так как одно число повторяется только один раз, то его никто не компенсировал, и оно осталось храниться в результате.Битовые операции используются в разных трюках. Попробуйте решить эту задачу менее оптимальным способом по памяти, например с использованием множества или словаря.
😱8👍7❤2
Книжная полка разработчика🔖
В интернете есть множество бесплатных материалов, туториалов, видео, нейросетей — это прекрасные инструменты, которые помогают разработчикам быстро получать информацию и тут же применять.
При этом книги остаются важным источником знаний, особенно для начинающих. В отличие от статей и видео в интернете, материал в книгах построен по нарастанию сложности. Для новичков это особенно важно, ведь отсутствие структуры может привести к путанице и неполному пониманию темы.
Авторы книг проходят многоэтапные проверки, правки и рецензирование, потому что издательства обычно предъявляют требования к качеству содержания.
Вероятность столкнуться с неверными данными в книге ниже, чем в интернете.
Техлид и автор курса «Python-разработчик» Бартенев Евгений собрал библиотеку книг, которые в разные моменты времени помогли ему, его студентам и коллегам. На видео он рассказывает, какие книги не теряют актуальности и будут полезны любому разработчику.
🔴 Программист-прагматик. Путь от подмастерья к мастеру (The Pragmatic Programmer: Your Journey to Mastery), Эндрю Хант, Дэвид Томас
🔴 Чистый код: создание, анализ и рефакторинг (Clean Code: A Handbook of Agile Software Craftsmanship), Роберт Мартин
🔴 Грокаем алгоритмы. Иллюстрированное пособие для программистов и любопытствующих (Grokking Algorithms), Адитья Бхаргава
🔴 Совершенный код (Code Complete), Стив МакКоннелл
🔴 Изучаем Python (Learning Python), Марк Лутц
🔴 Python. К вершинам мастерства (Fluent Python), Лучано Рамальо
⚙️ Смотреть видео «Книжная полка разработчика в эпоху интернета и искусственного интеллекта»
Какие книги стоят на вашей книжной полке? Делитесь в комментариях!
В интернете есть множество бесплатных материалов, туториалов, видео, нейросетей — это прекрасные инструменты, которые помогают разработчикам быстро получать информацию и тут же применять.
При этом книги остаются важным источником знаний, особенно для начинающих. В отличие от статей и видео в интернете, материал в книгах построен по нарастанию сложности. Для новичков это особенно важно, ведь отсутствие структуры может привести к путанице и неполному пониманию темы.
Авторы книг проходят многоэтапные проверки, правки и рецензирование, потому что издательства обычно предъявляют требования к качеству содержания.
Вероятность столкнуться с неверными данными в книге ниже, чем в интернете.
Техлид и автор курса «Python-разработчик» Бартенев Евгений собрал библиотеку книг, которые в разные моменты времени помогли ему, его студентам и коллегам. На видео он рассказывает, какие книги не теряют актуальности и будут полезны любому разработчику.
Какие книги стоят на вашей книжной полке? Делитесь в комментариях!
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Книжная полка разработчика в эпоху интернета и искусственного интеллекта
За время обучения и за время общения с коллегами и студентами, я собрал собственную библиотеку книг, которые в разные моменты времени помогли мне. И теперь я хочу поделиться с вами этой подборкой. Она будет интересна и тем, кто хочет изучить непосредственно…
👍10❤3😁1🥴1🗿1
Зарплаты IT-специалистов в первой половине 2024
Каждые полгода Хабр Карьера проводит исследование, чтобы узнать, сколько зарабатывают в IT. Большая статья с графиками и всеми подробностями уже доступна в их блоге.
➡ Читать отчёт Хабр Карьеры
Делимся основными выводами:
🟢 Медианная зарплата сейчас — 151 666 ₽, это на 8% больше, чем полгода назад.
🟢 Медианная зарплата в Москве — 200 000 ₽, в Санкт-Петербурге — 165 000 ₽, в регионах — 135 000 ₽.
🟢 Ощутимее всего выросли зарплаты у тестировщиков — на 20%, до 127 000 ₽.
🟢 Зарплата архитекторов ПО остается самой высокой среди разработчиков — 388 000 ₽ (+8%), меньше всех получают HTML-верстальщики — 66 000 ₽ (+10%).
🟢 Среди разработчиков больше всего за полугодие выросли зарплаты Программистов 1С — на 18%, до 180 000 ₽.
🟢 Самые высокооплачиваемые языки программирования — Objective-С, Elixir, Scala, Golang и Kotlin, а самый низкооплачиваемый — C.
🟢 Ощутимее всего выросли зарплаты у разработчиков Kotlin — на 16% до 290 000 ₽, и C (+14%) до 180 000 ₽.
🟢 Больше всего IT-специалисты зарабатывают в Авито (351 000 ₽), Райффайзенбанке (340 000 ₽) и в Холдинге Т1 (315 000 ₽).
Мы попросили Настю из Хабр Карьеры немного рассказать об исследовании, передаём ей слово🔽
Каждые полгода Хабр Карьера проводит исследование, чтобы узнать, сколько зарабатывают в IT. Большая статья с графиками и всеми подробностями уже доступна в их блоге.
Делимся основными выводами:
Мы попросили Настю из Хабр Карьеры немного рассказать об исследовании, передаём ей слово
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🔥8⚡4❤1
This media is not supported in your browser
VIEW IN TELEGRAM
👍16🔥6❤5🆒4🏆3
Ответы на вопросы от эксперта.
Савва предлагает ответить на ваши вопросы по C++.
Напоминаем, что Савва не только программист с семилетним стажем, но также наставник и менеджер команды наставников на курсе «Разработчик C++».
Вы можете задать свои вопросы в комментариях под этим постом, а на следующей неделе Савва ответит на них.
Савва предлагает ответить на ваши вопросы по C++.
Напоминаем, что Савва не только программист с семилетним стажем, но также наставник и менеджер команды наставников на курсе «Разработчик C++».
Вы можете задать свои вопросы в комментариях под этим постом, а на следующей неделе Савва ответит на них.
🤓5👍3
This media is not supported in your browser
VIEW IN TELEGRAM
🔥8❤5👍5😁1
Новая задача! На этот раз про Python от Кирилла Быкова, программиста с 18-летним стажем, наставника на курсе «Python-разработчик».
Дана отсортированная последовательность целых чисел и число k. Необходимо найти в этой последовательности число, максимально приближённое к k и вернуть его индекс.
Размер последовательности:
Число k:
Индекс элемента:
Примеры
Решение не должно превышать по временно́й асимптотике O(log(N)), где N — длина массива.
Дана отсортированная последовательность целых чисел и число k. Необходимо найти в этой последовательности число, максимально приближённое к k и вернуть его индекс.
Размер последовательности:
1 <= N <= 10^6
Число k:
0 <= k <= N
Индекс элемента:
0 <= index < N
Примеры
[1, 3, 4, 7, 9, 12] k = 5
Ответ: 2 (число 4)
[1, 3, 4, 12, 15, 15, 18] k = 14
Ответ: 4 (первое число 15)
Решение не должно превышать по временно́й асимптотике O(log(N)), где N — длина массива.
❤3👍1
А вот и решение задачи от Кирилла
Если задача показалась вам слишком легкой, Кирилл предлагает попробовать выполнить ее без модуля bisect.
from bisect import bisect_left
def find(a: [int], k: int) -> int:
if not a:
return -1
i = bisect_left(a, k)
if i >= len(a):
return len(a) - 1
if not i or abs(k-a[i]) <= abs(k-a[i-1]):
return i
return i-1
Если задача показалась вам слишком легкой, Кирилл предлагает попробовать выполнить ее без модуля bisect.
👍2🤔2