Владимир Балун
5.4K subscribers
289 photos
44 videos
316 links
Канал Балун Владимира — C++/Go разработчика из BigTech. Здесь вы найдете глубокие знания и материалы по программированию, личные истории и лайв-контент.

Сотрудничество: @vladimir_balun
Download Telegram
​​Краткий рассказ С/С++ разработчика о том, зачем именно вам стоит изучить хотя бы основы этих инструментов, пусть даже вы и программируете на другом языке программирования - PHP, JavaScript, Java, Python, в общем абсолютно не важно!

1. ОСНОВЫ CS
Не получится просто взять С/С++ и начать на них бездумно программировать... Хотя нет, получится, но программы ваши будут постоянно постреливать в различных местах (чаще всего там, где вы этого не будете ожидать), либо они будут такими же медленными, как и программы на каком-нибудь интерпретируемом скриптовом языке программирования (т.е. смысла от использования этих языков не будет никакого). Не стоит отчаиваться, выход есть! Для того, чтобы избежать всех тех проблем, вам придется познакомиться с основами архитектуры компьютера и операционных систем. В итоге, если у вас все никак не доходили руки до изучения основ CS, то С/С++, конечно же, вам в этом помогут!

2. ПЕРЕХОД НА ДРУГИЕ ЯП
После изучения С/С++ изучение других языков программирования будет вам даваться намного проще, потому что многое, что есть или скрыто в других язык программирования, вам часто приходится использовать или реализовывать самостоятельно! Приведу пример, когда я давно изучал Java, то я прекрасно понимал (без глубокого чтения документации), что происходит в момент выполнения операции "new", за счет чего там происходит передача объектов по ссылке и почему там строки имутабельные. Также совсем недавно решил изучить Go, дойдя до указателей - я понял, что могу смело идти дальше, потому что знаю в этой теме практически все!

3. УВЛЕЧЕННОСТЬ
Лично мне, иногда, нравится понимать, что я пишу такой софт, который работает бок о бок с операционной системой или использует какие-либо фичи аппаратного обеспечения, чтобы максимально утилизировать ресурсы машины, на которой будет запускаться приложение. Поверьте, это действительно очень сильно завораживает!
​​Инженер или человек-технология?

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

Обычно я разделяю вакансии на два вида - те где, нужен человек под какую-либо определенную технологию и те, где нужен человек с определенным инженермным бэкграундом. Сейчас поговорим о каждом виде поподробнее:

ЧЕЛОВЕК ТЕХНОЛОГИЯ
Часто бывает, что компания пишет какой-то большой проект с использованием одного языка или одной технологии. Вот им как раз и требуется такой человек, который будет знать именно эти интрументы, а все остальные знания и навыки ему в принципе необязательны. При устройстве на такую позицию этому человек стоит понимать, что ему постоянно предстоит заниматься одним и тем же. У этого вида работы есть определенные плюсы - очень быстрый рост в глубь определенного языка или технологии, но в тоже время может получиться такая ситуация, что со временем этот язык или технология станет неактуальной, в следствие чего работы связанной с этими инструментами будет меньше, и в конце этому человеку, скорее всего, придется начинать изучать сначала что-то новое...

ИНЖЕНЕР
Крупные компании, такие как Яндекс, VK, Касперский и так далее хотят видеть в первую очередь инженеров (хотя у них тоже встречаются люди первого типа для определнных задач). Им нужен человек с основами, под основами я подразумеваю то, что этому человеку не составит никакого труда пересесть за несколько недель на другой инструмент или технологию. У них работают такие вот универсальные бойцы, которые из-за основ знают и то и то другое и третье, но если они чего-то и не знаю, то они быстро это учат и также быстро начинают использовать на практике. Конечно, эти люди редко занимаются одним и тем же, очень часто им приходится писать что-то новое для них, благодаря чему они становятся такими вот разносторонними специалистами.
Всем привет, хотел предложить вам поучаствовать в консультации по программированию со мной совершенно бесплатно!

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

Форма:
https://docs.google.com/forms/d/e/1FAIpQLSemIo9J5ooDWNSbYdpRIbfAPhlSWBoNGUaG1OXbP31SwD_7uw/viewform?usp=sf_link
Media is too big
VIEW IN TELEGRAM
Сегодня проходили бесплатные консультации для тех, кто ответил на 20 вопросов в Google форме…
​​Наверное, будет многим интересно, чем занимается backend разработчик (не тот, который делает примитивный backend для сайтов, а тот, кто пишет сервисы, с которыми взаимодействуют тысячи или миллионы пользователей) на работе, поэтому в этом посте будет краткая информация на эту тему:

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

Масштабирование системы:
Возможна ситуация, когда приложение просто не выдерживает нагрузку и в этой ситуации приходится заниматься масштабированием (оценивать нагрузку, добавлять железо, распараллеливать что-то, перепроектировать, профилировать и ещё кучу всего). Масштабирование это такое вот комплексное слово в программировании…

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

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

Кодирование:
Все просто, останавливаться подробнее здесь не буду.

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

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

Также в зависимости от процессов и команды разработчик ещё может заниматься деплоем, администрированием, автоматизацией процессов, ручным тестированием тестированием и много чем ещё другим…
Нашел недавно крутой плейлист по компьютерным сетям, где практически все основы того, как компьютеры взаимодействую между собой… Рекомендую ✌🏻

https://www.youtube.com/playlist?list=PLthfp5exSWErPFK_-EAhVtxO3XoY0gsSe
Нашел интерактивный ресурс https://regexone.com/ - для тех, кто хотел изучить регулярные выражения и научиться пользоваться ими на практике!
Подготовил бесплатный открытый урок на тему "Первые шаги С++ разработчика" - пройдет он в эту субботу 26 марта в 13:00 по МСК 👨‍💻

Там будет масса полезной информации:
🔶 узнаете о том, кто такой С++ разработчик и чем он занимается;
🔶 что нужно знать для того, чтобы стать Junior С++ разработчиком;
🔶 сколько можно зарабатывать и как быстрее расти в этой сфере.

Регистрация и вся подробная информация доступна ниже по ссылке: https://codefactory.school/public_lesson
Всем привет, уже сегодня в 13:00 пройдет бесплатный открытый урок на тему "Первые шаги С++ разработчика" 👨‍💻

Кто не успел еще зарегестрироваться, ссылка ниже: https://codefactory.school/public_lesson
This media is not supported in your browser
VIEW IN TELEGRAM
Примерно через час уже начинаем, ссылка выше ⬆️
Перед сном решил написать на плюсах Garbage Collector… So, why not?!
​​Привет, хочу пригласить тебя на открытый урок «Первые шаги С++ разработчика» который пройдет 03.04 в 13:00 мск

На нем ты сможешь узнать:
◾️возможности языка С++;
◾️поймешь кто такой С++ разработчик и чем он занимается;
◾️узнаешь, как можно быстро расти и сколько зарабатывает С++ разработчик;
◾️создашь программу для подсчета кол-ва маршрутов в лабиринте.

Кому будет полезен открытый урок:
◾️новичкам Или начинающим программистам, которые всегда хотели научиться программировать или пробовали сами, но быстро выгорели при первых трудностях;
◾️с опытом в других сферах IT, которые хотят сменить род деятельности, обрести навыки в новых областях и просто сменить сферу разработки;
◾️всем заинтересованным в изучение С++ - кто хочет освоить прибыльную и антикризисную профессию, что работать удаленно в гибком графике.

Ссылка для регистрации:
https://clck.ru/eiKru

Увидимся на открытом уроке!
👨‍💻 Для тех, кто хотел книги по алгоритмам для новичков - нашел просто замечательные видео уроки от Яндекс по алгоритмам и подготовке к алгоритмическим секциям программирования:

https://www.youtube.com/playlist?list=PL6Wui14DvQPySdPv5NUqV3i8sDbHkCKC5