「プログラミングはじめたけど、実際に働くってなるとどうなの?」
「プログラマー・SEって大変なんじゃないの?」と考えている人も多いと思います。
こんにちは!フリーランスエンジニアのシンヤです。
2019年でエンジニア歴が6年になる僕ですが、今まで多くのプロジェクトに参加してきました。
この記事では、プログラマーのつらい点をお伝えしようと思います。
結論からいうと、プログラマーのつらい点は次の7つです。
■プログラマーのつらい点
— しんや@アプリ開発デザイン (@pentagon_tokyo) May 26, 2019
・女性が少ない
・デスマーチに遭遇
・バグにはまると進まない
・それ簡単でしょ!?と思われる
・他の人が書いたコード読むのが大変
・デザインが良くないと余計に工数かかる
・ビジネスモデルやデザイン変更のしわ寄せが来る
この記事を読むと、プログラマーのつらい点がわかります。
※日本では、プログラマーとせSEをわけて考えたりしますが、この記事では、プログラマーもSEも、コードを書く人ということにします。
女性が少ない・女性が働きやすい環境が整備されていない
経験上、プログラマーは、男性比率が高い職業です。
女性にとっては、労働環境がよくなかったりすることもあります。
では、なぜ女性プログラマーが少ない企業と多い企業があるのでしょうか?それは、企業がいかに女性が活躍できる環境を整えているかで違ってきます。実際、私の勤めていた会社の社内プログラマーの男女比は5:5でした。
https://www.sejuku.net/blog/46926#i-3
職場によりけりのようですが、「女性が働きやすい環境が整っていない」ことが多いです。
男性にとっては、「職場で出会いがない!」と、彼女をつくるのは、一苦労だとおもいます…
デスマーチに遭遇
バグが解消されないと仕事が終わらず、「デスマーチ」に突入します。
ぼくが経験したのは、とあるスタートアップで
「突然あしたプレゼンあるから、ここの実装をなんとか終わらせてほしい」といったものです。
しかも連絡が来たのが、夕方…
夕方から作業して、朝の4:00くらいまで作業しました。
バグにはまると進まない
プログラマーが作業していてつらい点のひとつが、謎のバグにハマって、全然作業が進まないことです。
作業は、進みませんが、締め切りはせまってくるわけです。
プログラマーのバグ修正あるある
再現性が低いバグは解消しにくい
バグを修正するには、「開発環境で、同じバグを発生させ、原因を突き止める」のですが、なかなか同じバグを発生させれない場合があります。
そういった場合、バグの原因をみつけられずに、困ることがあります。
バグ報告が上がってきたけど、バグの原因がわからない時は、けっこうつらいです。
バグを解消しても別のバグがうまれる
複雑なプログムダとバグを修正しても、新しい別のバグが生まれる場合があります。
「さっき修正したのに…」とこれもかなりストレスになります。
プログラムの書き方が汚いとバグがうまれやすい
プロジェクトを引き継いだ時、「既存のコードがぐちゃぐちゃ」だとかなり作業が大変になります。
「これ何してるの?」と、ひとつひとつの処理を読み解く必要があります…
忙しいのにコードを読み解くとなると、かなりつらいです。
さらに、コードが汚いと、バグも発生しやすいですし、バグを修正するのも一苦労です。
だからこそ、キレイなコードを書くことが大切になります。
キレイなコードを書きたい人には、『リーダブルコード』がオススメです。
それ簡単でしょ!?と思われる
今まで、プログラマーのつらい点をいくつか説明してきましたが、「意外と大変なんですね…」と思った人も多いはず。
異業種の人からは、「ここを少し変更するだけだから、すぐできるよね?」と、簡単な作業に思われがち。
少しの変更のように見えて、実際は、大幅な変更が必要で、すぐにはできないことが多々あります。
異業種の人とプログラマーとの認識の差がつらい点でもあります。
他の人が書いたコード読むのが大変
引き継ぎ案件の場合、前任者が書いたプログラムが汚かったり、あまりメンテナンスされていないと、かなり辛いです。
プログラマーが読んでも、理解できないほど汚いコードがあったりします。
もうストレスでしかありません。
キレイなコードは、見た瞬間でどんな処理をしてるかがわかります。
キレイなコードを書いて、レベルアップしたい方は、リーダブルコードを読んで実戦しましょう。
デザインが良くないと余計に工数かかる
アプリやWebページのデザインが、ガイドラインに沿っていない場合、プログラマーがゼロからデザインをアプリに落とし込む必要があり、かなり骨が折れます。
プログラマーもデザインのことを知っておくべきですし、デザイナーもプログラミングのことを知っておくべきです。
プログラマーとデザイナーは、密にコミュニケーションを取ることが必要です。
結果として、工数をおさえることができます。
ビジネスモデルやデザイン変更のしわ寄せが来る
ビジネスサイドの変更やデザインの変更のしわ寄せがプログラマーにやってきます。
ビジネス的に「やっぱりこうしたい」
デザイン的に「ここのデザインを変更したい」
そういった変更がプログラマーに押し寄せてきます。
また、デザイナーの制作が遅れて、エンジニアの制作時間が短くなることもあります。
納期まで時間がないのに、変更のしわ寄せが押し寄せてくるのが大変な部分でもあります。
【まとめ】プログラマーとして気をつけるべきこと
最近、なりたい職業ランキング1位になった「ITエンジニア・プログラマー」ですが、つらいこともあります。
「プログラマーのつらい点」から見えてくる「プログラマーとして働く上で気をつけるべきこと」は、次の4つです。
- 労働環境が整備されている会社かどうか確認する
- キレイなコードを書く
- ビジネスサイドの人にも、ちゃんと工数を説明する
- デザイナーと協力してシステムをつくりあげていく