Web デザイン会社 Media Surgery の主任開発者である John Macpherson が、自分の仕事のハイライトとして定期的に見ているものについて説明すると、ほとんどのソフトウェア開発者は共感できるでしょう。または何時間も働いてうまくいきました。本当の多幸感を体験することができます。」

ソフトウェア開発者が率直に語る: 開発者が自分の仕事について好きなこと、嫌いなこと

マイナス面も同様です。「うまくいかないことに多大な労力と時間を費やすと、無価値感が生まれ、 詐欺師症候群につながる可能性があります。」

私たちはソフトウェア開発者、人事専門家、マネージャーと開発の仕事の長所と短所について話し合いました。私たちは、開発者に多幸感かミュンヒハウゼン症候群のどちらかを定期的に選択させる 5 つの重要な領域を特定しました。結局のところ、 ソフトウェア開発に関しては、喜びと悲しみが隣り合わせであることがよくあります。

1. 問題を解決するか、車輪を再発明するか

ソフトウェア開発者が率直に語る: 開発者が自分の仕事について好きなこと、嫌いなこと

開発者は通常、問題を解決することが大好きです。 プログラミングは、このニーズを満たす 1 つの方法です。 フルスタック ソフトウェア エンジニアであり、Web ホスト Hosting Data の共同創設者である Percy Grunwald は、次のように述べています。「問題を解決するのが好きでなければ、ソフトウェアの開発は楽しくありません。」 Contrast Security のソフトウェア開発者である Jacob Mages-Haskins は、仕事を通じてパズルの本を集める必要がなくなりました。「開発者として、私はコードに新しい機能を実装するという挑戦が大好きです。毎日新しいパズルを解かなければならないような気分です。」

その一方で、問題に何時間も取り組んでいるのに、すでに解決策が存在していることに気づくと落胆することもあります。ソフトウェア会社 Whizpool の創設者兼 CEO である Zeeshan Arif 氏にとっても、不必要に車輪を再発明することはばかげています。

「物事を解決するには非常に多くの方法があり、それぞれの方法には独自のトレードオフがあるため、このようなことはプログラミングではよく起こります。自分のアプリケーションにどれを採用する価値があるかを見つけることが重要です。他の誰かがすでにその仕事を行っていると知るとイライラすることもありますが、同じ目標にもっと良く早く到達するための新しい方法や方法を見つけるのは楽しいことでもあります。」

ソフトウェア開発者が率直に語る: 開発者が自分の仕事について好きなこと、嫌いなこと

「他の開発者よりも優れたパフォーマンスを発揮できる可能性があるという知識は、大きな成果を達成する動機となります」と Grunwald 氏は言います。 「ソフトウェア開発では、最適なソリューションを見つけることが常に中心的な課題です。これには創造性と、さまざまなアプローチを試してみる意欲が必要ですが、この 2 つはソフトウェア エンジニアにとって最も優れた点です。」

2. クラフトとプロセス

ほとんどの開発者にとって、 ソフトウェア開発のプロセス自体には満足のいくものがあります。これは Whizpool CEO の Arif にも当てはまります。「私は他の人が使用できるものを作るのが大好きです。私は自分自身を一種の職人だと考えています。私のツールはコードだけであり、パイプレンチではありません。」開発者兼テクニカル ディレクターとして 10 年の経験を持つ Alexey Sutyagin 氏は、次のような比喩を思いつきます。子供の頃、私はいつも魔術師になりたいと思っていましたが、今では開発者として、現代世界の魔術師に近いです。」

ソフトウェア開発者が率直に語る: 開発者が自分の仕事について好きなこと、嫌いなこと

職人が完成したテーブルやキャビネットを見て心の満足を感じるのと同じように、開発者も自分の仕事の最終製品を見て喜びを感じます。フリーランサー ネットワーク Toptal のシニア フロントエンド開発者コーチである Daniel Jianu 氏は、これについて次のように語ります。私は医療現場で患者を支援したり、友人とのポーカー トーナメントを管理したりするために定期的にこれらを使用しています。」

ソフトウェア開発コンサルタント会社 Nexient のエンジニアリング担当副社長、ネイトベレント-スピルソン氏は、満足感を高めるために他の優先事項を持っています。あまりそのことについて話すことはありませんが、たとえば当社のモバイルアプリが日常生活でどのように使われているかを見ると満足感を感じます。」

ソフトウェア開発者が率直に語る: 開発者が自分の仕事について好きなこと、嫌いなこと

ただし、これらのプロセスは、開発者の仕事の技術的な側面とは常に対照的です。 Grundwald 氏が次のように述べているように、特に会議は開発者にとってしばしば苦痛な点です。「ソフトウェア開発者は、非生産的で反復的で無関係な会議をたくさん経験します。」この声明で、彼は IT トレーニング Web サイト aCompiler の創設者で主任開発者である Rajeev Bera に扉を開きました。「こうした会議の大部分には付加価値がありません。それとは別に、ドキュメントを作成する必要がある場合もあります。それは創造的な活動ではないので、特に好きではありません。」

企業環境内のプロセスが増えるほど、開発者のフラストレーションのレベルが高まることがよくあります。人材採用会社 EC1 Partners のエグゼクティブ コンサルタントである Kishan Patel 氏は、次のように説明しています。終わりのない官僚主義により、開発者は柔軟性が低下し、コードを表現力豊かにする自由も減ります。」隣のベレント・スピルソン氏は、「チームがコードよりもポリシーに苦戦しているのを見ると、私はイライラします」と付け加えた。

ソフトウェア開発者が率直に語る: 開発者が自分の仕事について好きなこと、嫌いなこと

ソフトウェア会社 STX Next の主任開発者である Rafal Gatkowski 氏は、バランスを見つけたようです。「すべてのプロセスは開発を妨げますが、良いソフトウェアを開発するには、一定レベルのプロセスが必要です。」開発専門家によると、鍵となるのは、プロセスが制御不能になって開発者に多大な時間を費やさないようにすることです。

「プロセスが壊れている最も一般的な例は、15 分間のスタンドアップ ミーティングであるべきものが、1 時間にわたる部門を超えた現状維持のミーティングになってしまうことです。」

ソフトウェア開発者が率直に語る: 開発者が自分の仕事について好きなこと、嫌いなこと

3. チームワーク vs. コラボレーション疲労

開発作業の手順面の多くは、 チームワークとコラボレーションの文脈で発生します。多くの開発者にとって、帰属意識は自分の仕事で最も素晴らしいことの 1 つです。 Python 開発者でサイバーセキュリティ エンジニアの Caleb Chandzamarda Junior は、コラボレーションすることが好きなことの 1 つだと考えています。「同僚と一緒にデザインについて考えたり、正しい答えを見つけるために長所と短所を比較検討したりすることに興奮しています。私一人では決してこれを成し遂げることはできませんでした。」

ソフトウェア開発者が率直に語る: 開発者が自分の仕事について好きなこと、嫌いなこと

Toptal のタレント コーチングおよびタレント オペレーションのディレクターである Joe Guarascio 氏も、部門を超えたコラボレーションが開発者にとっての利点であると考えています。

「特に企業レベルでは、多くの異なるタイプの専門家と部門を越えて働く機会は、日々のキャリア開発と長期的なキャリア開発の両方において、特にやりがいがあり、興味深いものになる可能性があります。」

ただし、日常的なコラボレーションには多大なエネルギーがかかる可能性もあり、ほとんどの開発者はむしろプログラミング作業にエネルギーを注ぎたいと考えています。 Contrast Security の Mages-Haskins 氏は次のように明かします。「企業の開発者として、ほんの数チームが協力するだけでも、コミュニケーションと調整のコストが急速に増加するのが嫌いです。ただし、機能を確実に有用にし、顧客に価値を提供するには全員が必要です。」

スチャギン氏が知っているように、最悪の場合、当初はコラボレーションとして計画されていたものが、かなり有害な社内環境に変わってしまいます。「大企業では、1 年間一生懸命働いても、結局プロジェクトが検討されるだけになるのが一般的です」重要ではないことが分類されているか、その影響が低すぎます。したがって、プロジェクトは慎重に選択する必要があります。」

4. ワークライフバランスとマラソンマルチタスクの比較

ソフトウェア開発については、好きなように考えることができますが、実際には、組み立てラインでの作業とは比較にならないのです。「ソフトウェア開発は、 フリーランサーやリモート ワーカーに最適です」とグアラシオ氏は言います。 「世界中のどこからでもさまざまなプロジェクトに取り組む自由は、多くの開発者にとって非常に魅力的です。」

この柔軟性はここ数年でさらに高まっています。たとえば、ヘルスケア企業 LeanTaaS のシニア ソフトウェア エンジニアであるティナ リウ氏は、自分の好きなように 1 日を計画する自由があると報告しています。

「パンデミックにより、チームや社内のコラボレーションとコミュニケーションが変化し、リモートで働くことが可能になりました。最近子供が生まれたので、在宅で仕事ができるのが嬉しいです。夜間に時間を補って開発タスクを完了する柔軟性があります。母は私が享受する自由を夢見ることしかできませんでした。私の日常生活についての母のコメントはこうでした。『それが人生だ』。」

しかし、9 時から 5 時までの厳密なスケジュールに従う必要がないのは良いことですが、Grunwald 氏が次のように明言しているように、開発者の仕事は非常にストレスの多いものになる可能性があります。膨大な数のプロジェクトをやりくりし、常に 1 つのタスクから次のタスクに飛び移っています。残業も定期的にあり、特定の状況下では異常な時間に発生します。」

Character Calculator の創設者である Burak Özdemir 氏も、時には暗い状況を描いています。「開発者として、私たちは数え切れないほどの時間画面の前に座っていることが多く、人間との対話はほとんどありません。また、新しく学ぶべきことや改善すべきことが常にあるため、仕事が本当に終わることがないという感覚もあります。一日中キーボードの上にかがんでいると、人間工学も課題になる可能性があります。」

後者は、柔軟性と自由を愛する開発者 Liu にとって、本当の意味での悩みの種でもあります。「嫌いなことがあるとすれば、一日中コンピューターを見つめなければならないことです。これは目だけでなく首や背中の筋肉にもストレスを与えますが、これを避けることはできません。だからこそ、私は頻繁に休憩を取ったり、目や筋肉をリラックスさせるためのエクササイズをしたりするよう自分に言い聞かせています。」

ソフトウェア開発者が率直に語る: 開発者が自分の仕事について好きなこと、嫌いなこと

5. 夢の仕事と現実

結局のところ、開発者として得られる経験の多くは一般論に基づくものではなく、最終的にどこに到達するかによって決まります。 Web デザインを専門とする Carbon Digital の CEO、Jared Ledbetter 氏が知っているように、これは個人の幸福と幸福に重大な影響を与える可能性があります。

「開発者のみで構成される部門に所属している場合は、満足する可能性が高くなります。ほとんどの場合、私が問題を抱えているのは、開発者ではない指導的立場にある人たちです。何もすぐに実行できないが、プロセスを定義したくない人。私が Jira や Azure DevOps のようなプロジェクト管理システムの使用を推奨した場合、この分野の疑いを持たないマネージャーはそれに拒否権を発動し、Microsoft Office を使用する可能性があります。」

チャンザマルダ氏も同様の不満を抱いており、「先のことを考えない従業員やマネージャーがいることはストレスになります。それらはすべて「今ここ」に関するものです。」

しかし、ソフトウェア開発は非常に人気のある分野であり、開発者にとっては利点があり、ガトコウスキー氏は次のように述べています。「否定できない利点は、 新しい仕事を見つけるのが非常に簡単であるという事実です。」 (FM)

この投稿は、米国の姉妹誌 Infoworld の記事に基づいています。

ソフトウェア開発者を興奮させる 10 のこと

プロダクト マネージャーおよびプロジェクト マネージャー一般に、開発者は、誰かが自分の仕事のやり方を説明しようとすることを特に歓迎しません。しかし、プロダクト マネージャーやプロジェクト マネージャーが開発チームを率いることが多いため、これがまさに意見の相違につながる可能性があります。 devRant の David Fox 氏もこれについて次のように意見を述べています。「結局のところ、ほとんどの場合、製品マネージャーやプロジェクトマネージャーは、ソフトウェア開発者が知っている日々の課題や問題を考慮せずに、ある意味でプロジェクトやプロセスの『所有者』になっているのです。」

上司プロダクト マネージャーやプロジェクト マネージャーと同様に、開発マネージャーやエンジニアリング マネージャーも開発者のチームを率い、プロジェクトが予定どおりに予算内で完了するようにする責任があります。 「会社によっては、上司が開発チームのメンバーでもあるという状況が発生する場合があります。特に、上司自身が以前は開発者であり、昇進後に上司になった場合には、対立が生じる可能性があります」と Fox 氏は指摘します。

リクルーターソフトウェア開発者は、熟練した労働者が不足しているため、リクルーターやヘッドハンターによる嫌がらせを受けるために積極的に仕事を探す必要がありません。まだ採用担当者の手に落ちていない開発者を見つけるのは非常に難しいでしょう。デビッド・フォックスは、採用担当者のしつこさを特に問題視しています。そして、あなたが仕事を探しているとしても、多くの採用担当者は、無関係な求人を出したり、あなたのプロフィールにまったく当てはまらない仕事を勧めたりする傾向があります。たとえば、あなたがその気はないのに、国の反対側での仕事などです。動く。”

ドキュメントドキュメントがない場合、ソフトウェア開発者は苦情を言います。多すぎる場合は苦情を言いますし、文書作成も自分たちで行わなければならない場合は、彼らは苦情を言います。開発者は、他の人がドキュメント作成タスクを処理する方法について不満を言うことさえあります。 Fox 氏が強調するように、この時点で開発者全員が最終的に同意します。「ソフトウェア開発者は、詳細でよく書かれた正確なドキュメントを望んでいますが、自分たちでそれを行うことは望んでいません。」

会議会議は他の人だけの問題ではなく、ソフトウェア開発者にとっても問題です。特に、まったく不必要で、時間がかかり、非常に退屈な会議の場合はそうです。フォックス氏の説明によれば、「電子メールであるはずだった別の会議を生き延びた」という碑文が刻まれた信仰アイテムが現在入手可能となっている。

コワーキング スペースアジリティの高まりに伴い、企業、特にソフトウェア開発チームでは、フラットな階層、コラボレーション、チームワークが日常生活の一部になりました。しかし、彼らは特に、オープンプランのオフィスで仕事を管理することが難しい、または不可能であると感じています – 少なくともそれがdevRantの数字から言えます。デビッド・フォックスは次のように説明します。「同僚が話していたり​​、会議に参加できなかったり、電話に出られなかったりするなど、気を散らすものが多すぎます。オフィスのコーヒーやその他のアメニティ、あるいはその逆についての苦情もたくさんあります。」

同僚一目瞭然: 誰もが特に大切にしている同僚がいるでしょう。ない。ソフトウェア開発者の場合、同僚から嫌われるのは通常、仕事の質が低いか、完全に抑制されていないエゴのどちらかが原因である、と David Fox 氏は明らかにします。

面接ソフトウェア開発者が仕事を探していて、面接に招待されると、通常、後で文句を言うことがあります。開発者が実際に何をしているのか全く分かりません」とフォックス氏は言います。

エラーとバグソフトウェア開発者は毎日エラーやバグに対処しています。だからこそ、devRant の創設者 Fox 氏は、この問題に関しては開発者たちの考え方が異なると信じています。「他のほとんどの問題は前向きな解決策が見当たりませんが、バグやエラーは修正可能であり、それは良いことだと思います。」

品質保証品質保証 (QA)、または品質保証は、ソフトウェア開発の重要な部分です。それでも、ソフトウェア開発者は、製品やプロジェクトのマネージャーに対して不満を抱くのと同じように、QA 専門家に対しても不満を抱くことが多いとフォックス氏は述べた。 「品質保証は、開発者が製品やプロジェクトを完了したときに、その製品やプロジェクトを手に入れます。そのため、開発者は開発プロセス中にどのようなハードルや回避策を乗り越えなければならなかったのか理解できないことがよくあります。 QA 担当者が開発者に、自分たちで対応できる領域のやり直しを依頼することも定期的に行われているようです。」