Быть разработчиком может быть кошмаром…
… если вы находитесь в неправильном окружении. Для многих разработчиков это постоянный источник стресса, разочарования и беспокойства. Как веб-разработчик, вы любите писать код.
Другие головные боли? Это вещи, без которых ты можешь обойтись.
Если у вас есть опыт, вы сталкивались с одними и теми же головными болями снова и снова. Иногда кажется, что кто-то играет с вами злую шутку или что все, с кем вы работаете, сумасшедшие. И худшая часть?
Эти головные боли не проходят.
Когда эти ошибки игнорируются, разработчики обычно чувствуют себя несчастными, измученными и совершенно несчастными.
Это не обязательно должен быть ты.
Опытные разработчики используют эти головные боли в своих интересах
Они превращают эти ежедневные бедствия в возможности, которые они могут использовать. Среднестатистические разработчики жалуются на эти головные боли, надеясь избежать неизбежного. Все звезды используют эти ежедневные бедствия, чтобы сделать себя и других лучше.
В чем их секрет?
Это простой секрет, который большинство не хотят принять. Это звучит очевидно для большинства людей, когда они слышат это, когда на самом деле это совсем не так. Вот секрет.
Делай то, что другие не будут.
Вот и все.
Сделайте это, и ваша ценность как разработчика взлетит до небес. Овладейте этим, и вы станете незаменимыми.
Опыт велик, прививка бесценна
Для многих разработчиков эти головные боли наносят вред. Большинство разработчиков ненавидят иметь дело с этими проблемами. В определенный момент они начинают чувствовать себя в ловушке. У них полный случай признанной беспомощности . На эмоциональном уровне они боятся, что их обвинят, если что-то пойдет не так . И в определенной степени они правы.
Но избежать проблемы — не ответ.
Столкновение с проблемой дает вам свободу и контроль. Когда вы сталкиваетесь с этой проблемой, отчаяние, гнев и страх теряют свою остроту. Как бы ни был велик опыт, он не может держать свечу на прививке.
Доминируйте над этими проблемами, и вы прививаете себя эмоционально и психологически против них.
О каких проблемах идет речь?
Головная боль # 1: исправление неработающего кода
Вы только что были наняты на новую работу. Ваш первый предмет дела? Исправление плохо сделанного приложения, оставленное предыдущим разработчиком. У которого либо нет документации (он в это не верил), либо слишком много документации.
Но на этом осложнения не заканчиваются.
Разработчики, как и писатели, уникальны. У них у всех свой стиль, свой стиль действий. Код, с которым вы работаете, длинный, сложный и содержит ошибки. Лучше всего выбросить все и начать все сначала.
Только ты не можешь.
Потому что этот код живой и используется.
Сделать хуже
Таким образом, вы поставили стоп-пробел на месте. Вы делаете временное исправление, которое вам нужно, чтобы все продолжалось. Но вы не останавливаетесь на достигнутом.
Вы не торопитесь, чтобы наметить вещи. Что делает недокументированный код? Какие библиотеки используются где? Где конфликты? Каковы зависимости? Узнайте абсолютно все, что вы можете о плохо сделанной системе, которую вы исправляете.
Поначалу это утомительно и жалко. Но подавляющее большинство разработчиков стараются избегать этого. Вот почему вы должны это сделать.
Тщательное понимание дает вам возможность создавать изменения, которые придерживаются . Вы будете знать систему лучше, чем кто-либо в вашей команде. Это делает вас незаменимыми.
Делайте это хорошо, и вы сможете пережить массовые увольнения, политику компании и катастрофы. Они не могут позволить себе потерять вас, вы один из немногих разработчиков, которые знают вещи внутри и снаружи.
Головная боль # 2: исправлена одна ошибка, создано десять
После трех часов поиска вы, наконец, нашли его. Исправление достаточно простое, поэтому вы запускаете обновление. Только сейчас вместо одной оригинальной ошибки их десять.
Возможно, в используемой вами библиотеке много ошибок. Возможно, ваше обновление создало конфликт с чем-то другим. Или, может быть, ошибки неизвестны — так как вы никогда не найдете проблему. Если вам повезет, эти ошибки волшебным образом исчезнут сами собой.
Сделать хуже
Перво-наперво: встать и уйти. Может быть много давления, чтобы найти решение, но вашему сознанию нужен перерыв. Таким образом, вы делаете умную вещь, и вы уходите.
Выполнение этого переносит проблему в ваше подсознание, где вы будете продолжать работать над этим. Было ли решение в вашей голове, пока вы были в душе? Придумать блестящую идею, пока вы засыпаете? Это ваше подсознание на работе.
Но есть еще одна причина, по которой вы должны уйти.
Страх, стресс и беспокойство негативно влияют на ваш разум. Исследование, проведенное NIMH, показало, что негативные эмоции нарушают познание, память, принятие решений и даже пространственную навигацию.
Сначала разберитесь со своими негативными эмоциями, а потом возвращайтесь.
Начните задавать вопросы, сосредотачивая свое внимание на изоляции проблем. Вернуться к предыдущей версии.
- Ошибки все еще там?
- Это одни и те же ошибки или немного другие?
- Были ли устранены какие-либо ошибки, когда я вернулся к предыдущей версии?
- Когда эти ошибки присутствуют?
- Являются ли эти ошибки поверхностными, некритическими, критическими или показательными?
Задавать много вопросов тренирует ваш ум для поиска ответов. Ответ говорит вам кое-что о проблеме. Продолжайте задавать вопросы, чтобы быстрее находить проблемы.
Головная боль № 3: это то, что мне нужно, это проблема
Вы были назначены на новый проект — интеграция веб-сайта клиента с API нового поставщика. Они предоставляют вам ключи и учетные данные, которые вам нужны. Кажется, все хорошо.
Пока вы не запустите несколько тестов.
Все выглядит правильно, но вы не можете заставить вещи работать. Вы обращаетесь к точке соприкосновения и просите помощи. Они также не могут делать из этого головы или хвосты. Ваши вызовы API не работают.
Вы уже отстали от графика. В этом случае вы не уложитесь в срок, если все не будет решено на следующий день или около того. Но, похоже, никто не знает, в чем проблема.
Сделать хуже
Вот привычка, которую мы использовали в нашем агентстве. Мы привыкли искать альтернативного поставщика, решение или вариант. Если клиент хотел A, мы давали ему A, но у нас был B, готовый к работе, на всякий случай.
- Если клиенты хотят Netsuite, у вас есть Tracmor и TradeGecko на заднем плане, готовы, если что-то пойдет не так.
- Если они используют определенную библиотеку, мы найдем (или в некоторых случаях создадим) новую библиотеку. Это сложно сделать и зависит от вашей способности заблаговременно обнаружить серьезные красные флаги.
- Если бы они хотели, чтобы вещи были разработаны на Java, у нас был бы дополнительный язык с примерами кода, библиотеками, документацией по API и т. Д., На всякий случай.
В начале это кажется утомительным. Если вы работаете в команде разработчиков, у вас уже много работы. Такое чувство, что вы бежите от одного огня к другому, делая все возможное, чтобы не отставать.
Знаешь что я имею ввиду?
Мы чувствовали то же самое. Но вот что мы нашли. Выполнение этой дополнительной работы заставило нас быть эффективными. Мы были готовы к неожиданностям, и в результате наш процесс улучшился.
Вы быстро поймете, кто в чем хорош, и вы будете полагаться друг на друга, чтобы добиться цели. Вы начнете действовать как команда, и в определенный момент работа выполняется — без слов .
Это не значит, что ты перестаешь говорить. Это означает, что ваши обсуждения и беседы становятся более эффективными. Такие команды значительно превосходят группы, которые просто работают вместе.
Головная боль № 4: Мои сотрудники некомпетентны
Вы находитесь на начальной встрече с клиентом, и они просят что-то невозможное, глупое или вредное . Ваши сотрудники делают все возможное, чтобы успокоить клиента. Это приводит вас к мысли, что они либо случайно некомпетентны, либо умышленно некомпетентны.
Вроде как это.
Сделать хуже
Вам придется больше времени разговаривать со своими коллегами. Вам нужно выяснить, является ли их проблема …
- Случайная некомпетентность , также известная как эффект Даннинг-Крюгера . Это когнитивный уклон, когда некомпетентные считают, что они более опытные (а другие менее опытные), чем на самом деле.
- Умышленная некомпетентность становится проблемой, когда коллеги знают достаточно, чтобы получать информацию, но предпочитают игнорировать то, что они знают, в пользу того, что они хотят.
Так как вы справляетесь с этим? Сотрудники со случайной некомпетентностью нуждаются в обучении этому конкретному навыку . Сделайте это успешно, и подавляющее большинство людей осознают и признают правду.
Они не были такими умелыми, как они думали.
С другой стороны, преднамеренно некомпетентным сотрудникам сложнее иметь дело. Для этих коллег характерно играть вещи близко к груди. У них есть причина (хорошая или плохая) игнорировать правильное решение, но они не говорят.
Найдите причину, по которой они игнорируют вещи, и их сопротивление исчезает.
Но что если ты не сможешь? Что если они откажутся работать с вами? Вы помещаете этих сотрудников в карантин. Вы работаете вокруг них, сосредотачивая свое внимание на других, которые готовы помочь вам добиться цели. Просто держите вещи дружелюбными, вежливыми и добрыми.
Ожидайте, что эти сотрудники почувствуют угрозу и даже вызовут проблемы.
Головная боль № 5: я должен сделать невозможное (завтра)
Ваш босс приходит к вам с чрезвычайной ситуацией. Ему нужно четыре новых функции в течение 24 часов, и он требует, чтобы вы сделали это. Если это не так, вы пропустите важный срок. Проблема? Каждая из этих функций займет несколько недель, чтобы закончить.
Что еще хуже, ваш начальник уже пообещал клиенту, что эти обновления будут сделаны вовремя . Его небрежное планирование и распущенные губы создали для вас огромную потенциальную головную боль.
Сделать хуже
Скажи да абсурдному требованию …
… но изложите свой список условий четко и точно. Вместо того, чтобы бороться с вашим боссом за его невыполнимые требования, привязайте его к этому вот так …
- Я могу сделать это, если у меня есть X, Y и Z. Не могли бы вы помочь мне получить их?
- Я должен делать X; Вы хотели, чтобы я полностью проигнорировал это и сосредоточился на Y?
- Х предотвратит это, вы позаботитесь об этом для меня, чтобы я мог сделать это для вас?
Вот красивая часть об этом.
По их мнению, это чрезвычайная ситуация — все руки на палубе, верно? Если они просят невозможного, а вы их запутали, им придется помочь. Им придется сделать невозможное тоже.
Если они не выполняют свою часть, вы не можете выполнять свою. Что еще хуже, они не будут рассматриваться как «командный игрок», если они откажутся вам помочь.
Помните видео, которым я поделился ранее в статье? (прокрутите вверх и посмотрите, если вы еще этого не сделали). Это сатира, но давайте пойдем с этим. Они хотели, чтобы их «эксперт» создал прозрачную линию. Он использовал логику и разум, чтобы объяснить вещи, но у клиента не было этого.
Есть более простой способ.
Эксперт мог бы попросить ее о помощи.
- «Не могли бы вы предоставить нам прозрачную ручку? Тот, который рисует невидимые линии?
- «У вас есть предыдущий пример из 7 линий, которые все перпендикулярны друг другу?
Клиент будет нести ответственность за предоставление или представление дополнительных разъяснений. Если задача на самом деле невозможна, это станет для них проблемой.
Я немного упрощаю, но думаю, вы поняли. Привяжите своего босса, клиента или сотрудников. Попросите их взять на себя вес их невыполнимого требования. Подавляющее большинство людей осознают свою ошибку, становясь защитниками того, что вы хотите. Все потому, что ты все ухудшил.
Иногда хуже на самом деле хуже
Иногда вы не можете делать то, что хотите — вы вынуждены делать то, что должны .
Я понял
Учитесь на этих ситуациях, деконструируйте их. В каждой головной боли или препятствии есть возможность. Это звучит клише, но это правда.
Используйте эти возможности, и вы обнаружите, что ваше влияние растет. Внезапно вы можете получить больше денег, взять на себя больше ответственности и помочь большему количеству людей. Вы станете известным как человек, который делает вещи лучше, потому что вы сделали вещи немного хуже.
Делать вещи хуже может быть лучше
Делать то, чего не хотят другие, означает, что вы столкнетесь с этими головными болями и победите. Вы выиграете битву и войну, создав прочный план на будущее.
Вместо того, чтобы избегать проблем, у вас есть то, что вам нужно, чтобы встретиться с ними лицом к лицу.
Сначала это утомительно, но этот менталитет становится даром, который постоянно дарит. Это укрепляет вашу позицию как бесценного. Он защищает вас от бедствий — увольнений, сокращений рабочих мест и внутренней политики.
Быть разработчиком не должно быть кошмаром. Ваши дни не должны быть заполнены страхом, стрессом и беспокойством.
Душевное спокойствие, безопасность работы, множество возможностей, они ваши — если вы делаете то, чего не делают другие.