3238

Советы тем, кто реально хочет стать программистом6

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


2. Не верьте тем, кто обещает быстрый прогресс и гарантированное трудоустройство - это верный признак инфоцыган (за очень редкими исключениями). В той же Java сейчас требуется гигантский объем информации для успешного трудоустройства - ну как минимум кроме синтаксиса еще Spring, базы данных, Maven/Gradle, автотесты. За три месяца это выучить невозможно. За год -  вполне.


3. Избегайте курсов для "умственно отсталых". Тут нужно понимать: можно немного сгладить кривую сложности в начале - подбирать всякие метафоры с паровозиками при объяснении логических операторов, делать красиво анимированные схемы etc. Это отличное завлекалово, когда после вывода трех строк на экран и примитивной программки типа "четное ли число или нет", кажется, что это просто и вообще непонятно, из-за чего сыр-бор. Но потом вам попадется какой-нибудь принцип подстановки Лисков, который вообще-то одна из базовых концепций ООП - и его уже с помощью метафор так просто не объяснить. Или вот вы читаете про особенности индексации таблиц в БД, например, и не понимаете ни слова. Некоторые концепции сложные сами по себе. Это как выпустить учебник "Квантовая механика для дошкольников" (нет, я не уравниваю в сложности квантовую механику и программирование). 


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


5. Старайтесь учиться сами столько, сколько возможно. Гуглите книги, статьи на Хабре, видео в YouTube, документацию. Вообще скилл искать документацию самому очень выручает.


6. Обязательно выкроите время на git. Просто поверьте - он будет нужен.


7. Если не знаете английский - учите. В контексте IT та информация, что есть в рунете - это жалкий, недостойный упоминания огрызок по сравнению с тем, что можно найти на английском.


8. Проявляйте инициативу, не ждите, будьте готовы работать за копейки - главное опыт. Свою первую работу я нашел просто - вбил в поисковике "Java Хабаровск работа", открыл первый попавшийся сайт (галера для госа), скопировал телефон, написал в WhatsApp и напросился на собес. Думаете, меня взяли сразу? Нет, меня попросили написать реализацию стека. Я попробовал родить код на доске на массивах, и спустя полчаса меня милостиво отпустили - доучиваться. В итоге я к ним попал через три месяца. Зп на испытательном - 25к, 35к после испытательного.


9. Если уверены в своих силах и чувствуете, что готовы искать работу - старайтесь абсолютно всеми возможными способами попасть на стажировку, такую, где вас условно кинут на амбразуры, где ваш первый pull-request разнесут в такие щепки, что вы потом будете четыре дня плакать на больничном. Именно в таких местах качается реальный скилл программирования. Рост в начале идет только при условии разницы в опыте между участниками, если все на одной ступени - это стагнация.


10. Многие новички не могут родить pet проект, это нормально. Просите тестовое. Поскольку до мидла вам еще как до луны, цель вашего тестового - просто проверка на то, как вы будете писать код (спагетти, названия переменных транслитом,  методы по 600 строк и другие признаки идиота сразу отпугнут) и знаете ли вы базовые концепции языка (если в языке иммутабельные строки и вы в цикле их конкатенируете - тревожный колокольчик).


11. Самое главное - подумайте, готовы ли вы этим заниматься всю жизнь даже за большие деньги? Готовы ли вы регулярно говорить "я не знаю, покажи мне, как надо"? Готовы ли вы защемить свое ЧСВ и признать, что всегда и в любой момент времени рядом с вами может оказаться кто-то, кто знает больше вас - и вам придется у него учиться, даже если вы principal с 15-летним опытом? Готовы ли вы в свободное время висеть на литкоде по два-три часа в день, чтобы не уходить в крудо/формошлепство? Потому что нет большего вреда для проекта, чем закостенелый дебил, который тащит в работу архитектурные решения, популярные эдак лет 15 назад. Или придурок, который выгружает всю таблицу БД в оперативку, чтобы отсортировать ее там и вытащить одну запись, потому что он так делал раньше и это работало. Или идиот, который считает, что автотесты - это трата времени, мол, есть же тестировщики.


Потому что если не готовы - пожалуйста, не идите в программисты.

Лига программистов

2.3K постов12K подписчиков

Правила сообщества

- Будьте взаимовежливы, аргументируйте критику

- Приветствуются любые посты по тематике программирования

- Если ваш пост содержит ссылки на внешние ресурсы - он должен быть самодостаточным. Вариации на тему "далее читайте в моей телеге" будут удаляться из сообщества

Вы смотрите срез комментариев. Показать все
18
Автор поста оценил этот комментарий

забавно…

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

раскрыть ветку (16)
23
Space monkey
Автор поста оценил этот комментарий

Вес программ мало связан со скиллом разработчиков. Раньше было меньше библиотек, часто писали разные велосипеды под задачу, это занимало время. Сейчас ты сделал проект, подцепил к нему десяток библиотек, написал api и немного логики и все. Но десяток библиотек кроме нужной функциональности имеют ещё кучу всякого разного, что не используется, и подтягивают ещё 15 библиотек.

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

Куда серьёзней, на мой взгляд, проблемы с производительностью, безопасностью и багами.

3
Автор поста оценил этот комментарий

Чувак, открою тайну:

Оптимизация - отдельная задача разработки и она стоит денег. Можно написать приложение за условные 100 дней, оно будет работать в целом, но тормозить у 5% человек. Если бизнесу норм, то так и оставят.

Если тормозить будет у 50% человек, то дадут задачу оптимизации и подгонки до условных 5% недовольных тормозами.

15
DELETED
Автор поста оценил этот комментарий

А ты готов больше платить за оптимизацию? Код работает на бизнес, а не крутится в вакууме, у бизнеса есть сроки, код должен быть легко поддерживаемым (время на онбординг нового сотрудника не должно занимать полгода), надежным и хорошо работать на среднем железе. Выход - использовать либы и фреймворки, они много весят (Spring отжирает минимум пару сотен мб оперативки просто по факту) но сокращают время и ресурсы, требуемые для разработки, ибо они уже оттестированы и оптимизированы (как правило).

раскрыть ветку (9)
3
Автор поста оценил этот комментарий
Когда приложение сбера весит Гиг и не помещается и не работает на бабушкиных смартфонах? Это свинство
ещё комментарии
1
Автор поста оценил этот комментарий

Уменьшение веса программ это не оптимизация в большей части случаев, а бесполезная трата времени. И с квалификацией разработчика мало связано. Если есть библиотека, которая решает нужную мне проблему, я буду использовать эту библиотеку, даже если она весит 10 гигабайт.

раскрыть ветку (1)
14
Автор поста оценил этот комментарий

Да ты охуел Вы преувеличиваете

0
Автор поста оценил этот комментарий
А ничего, что функционал тоже растёт?
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

непропорционально. рано закинулся морфином.

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества