Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!
![](https://habrastorage.org/r/w780q1/getpro/habr/upload_files/447/ab2/749/447ab27494a0149c90a99ec33c0f50bc.jpg)
Прочитав книгу «Идеальный программист», я составил выжимки, которые затрагивают определенные сферы или ситуации в разработке. В этой статье я поделюсь выжимкой о том, кто такой профессиональный программист.
Мое мнение о книге
Книги Роберта Мартина всегда интересно читать. Эта книга не исключение. Она охватывает тематики тестирования, руководства, работы на проекте, профессионализма и многие другие. Я рекомендую прочитать ее каждому, кто связал себя с IT.
Качества профессионала
Профессионализм - это ответственное отношение к делу
Пишет качественный код
Стремится создавать меньше ошибок;
Не устраивает грязь в коде;
Не передает на тестирование код, в котором не уверен;
Становится героем, когда хорошо выполняет свою работу, без нарушения сроков и бюджета;
Сам решает свою ошибку, а не перекладывает ее на других.
Всегда помогает бизнесу достичь его целей
Использует личное время, чтобы работать продуктивнее;
«Удерживает бизнес на плаву», а не «укрывается в убежище» когда он рушится;
Проблемы работодателя - его проблемы;
Всегда спокоен и решителен;
Работает быстро, но без спешки.
Хорошо взаимодействует с коллегами
Уделяет внимание возможным ошибкам коллег и помогает их исправить;
Не издевается и не высмеивает коллег;
Принимает заслуженные насмешки и легко отмахивается от незаслуженных;
Оказавшись мишенью для насмешки, смеется первым;
Не боится обратиться за помощью или предложить ее;
Берет на себя ответственность за обучение новичков.
Не принимает обязательства, которые приняли за него
Говорит правду;
Имеет смелость сказать «нет» начальству.
Заражение профессионализмом
![](https://habrastorage.org/r/w780q1/getpro/habr/upload_files/7ef/364/27d/7ef36427d049c57231ceb2dd69ddc22b.jpg)
Профессионализм передается от человека к человеку. Старшие обучают ему младших. Коллеги обмениваются им между собой;
Профессионализм распространяется как интеллектуальный вирус. Вы «заражаетесь» профессионализмом, наблюдая за другими;
Нельзя убедить людей быть профессионалами или принять профессиональное отношение к делу;
Чтобы заразить профессионализмом, нужно демонстрировать его. Стать образцом для подражания.
Обещания
Пожалуй, одна из самых высоких репутаций в нашей отрасли - серьезный разработчик, который держит слово
Обещание состоит из 3 частей:
Вы говорите, что вы это сделаете;
Вы ответственно относитесь к своим словам;
Вы выполняете обещанное.
Пустые обещания начинаются с:
«Нужно / Должен»;
«Надеюсь / Хорошо бы»;
«Давайте».
Серьезное обещание звучит так: «Я сделаю X к времени Y»;
Обещай только то, что находится под твоим контролем;
Если не можешь выполнить обещание - как можно быстрее сообщи об этом.
Помощь
![](https://habrastorage.org/r/w1560/getpro/habr/upload_files/09e/d6b/83d/09ed6b83d93f4b476787adc40c89db41.png)
Принимай помощь
Не отказывайся от помощи из-за нехватки времени;
Выдели на разговор около 30 минут;
Прими помощь с благодарностью и отнесись к ней со всем вниманием;
Если особой пользы от помощи не видно, вежливо извинись и заверши беседу с благодарностью.
Предлагай помощь
Если кто-то испытывает затруднения, предложи помощь;
Свежая точка зрения может стать катализатором для решения проблем;
Запланируй на помощь не менее часа. Реального времени уйдет меньше, но торопиться не стоит;
Скорее всего, от такого сотрудничества ты получишь больше, чем отдашь.
Не отставай от отрасли
Изучай новые языки, дисциплины и методологии;
Читай книги, статьи, блоги, твиты;
Посещай конференции;
Участвуй в Open Source проектах;
Изучай то, что лежит за пределами твой привычной зоны;
Расширяй кругозор.
Уровни разработчиков
![](https://habrastorage.org/r/w780q1/getpro/habr/upload_files/353/41d/18f/35341d18fb75129f8dfed3d7f6f16e4c.jpg)
Роберт Мартин выделяет 3 уровня разработчиков в некотором «идеальном» мире программирования.
Мастер
Возглавлял более одного серьезного проекта;
Больше 10 лет работает с разными системами, языками и ОС;
Умеет руководить несколькими командами;
Является квалифицированным проектировщиком и архитектором;
Может запросто спрограммировать что угодно;
Несет ответственность за реализацию проекта с технической стороны.
Ремесленник
Рядовой программист - обученный, компетентный и энергичный;
Учится работать в группах и выполнять функции руководителя;
Обычно не хватает опыта работы с разными системами;
Обычно знает один язык, одну систему, одну платформу;
Средний стаж около 5 лет;
Есть наставник - мастер или более опытный ремесленник.
Ученик / интерн
Никакой самостоятельности, его очень плотно контролируют ремесленники;
Сначала просто помогает ремесленникам и не выполняет никаких задач;
Ученичество должно длиться не менее года.
Ваше мнение
Надеюсь, эта статья была вам полезна. Будет интересно услышать мнение о ней и о самой книге в комментариях. Instagram для связи.