20代半ばの若手(?)がこれまでの経験や思いを書いています

これってプログラマ離れ?

»

 お久しぶりです、forsetiです。2週間ほど前から首から腰にかけて痛みと急激な疲労感があり、吐き気が続いておりました。この時期は気温や湿度の差が激しいうえに冷房を付け始めることもあり、腰痛などが発生しやすい時期のようですね。

  • 多少暑くても、職場では上着を羽織る
  • 自宅では「レンジで温める襟巻き」をする
  • 運動前に柔軟運動を多めにする

などを行った結果、かなり改善しました。いまは暑い時期なのに、これは冬場にやることですね……。皆さまもお気を付けください。なってしまうと本当につらいです。

●本題:これってプログラマ離れ?

 以前お話しした「フレームワークが巻き起こす人材革命 」に近い話になります。少々前の話になりますが、ソフトウェア開発環境展を見にいく機会をいただいて、Javaのフレームワークを見てきました。フレームワークといっても、そのほとんどはプログラムの「自動生成」を売りにしており、プログラマを手助けするというよりはプログラマに頼らないことを売りにしているようでした。利用実績も多いそうで、「説明を受けた範囲では」使える局面も多そうです(実際に使ってみないことには何とも言えませんが)。

 以前いただいた「自動生成でプロジェクトが回るのか?」というご指摘に対して言えば、「どうやら自動生成で回る案件も少なくないようです」という状況でしょうか。企業側からすれば現状に問題、課題があるなら試してみる価値はあるくらいのものだったと思います。

●委託する側の立場で現状の問題を考えてみる

 では、企業側における現在の問題、課題とは何でしょうか。企業としては「過去に一度でもトラブルが発生すれば、それをリスクとして捉えなければならない」という思考があると思います。この観点で、委託する側で考えうる要素を挙げてみます。

●委託する側からみたリスク

  • 若干の修正でも、その度に改修依頼という面倒な手続きが発生。時間もそれなりに必要
  • (そもそも買い叩きが原因だと思いますが)受領したプログラムにバグが多いなど、質やスキル的な問題が怖い
  • 自社開発していたが、担当がいなくなってしまい、何が何だか分からなくなった

 5年前、10年前のプログラムでは往々にしてあることのようです。現在起きている努力による解決が見込める問題から、過去にできた負の遺産まで、いろいろあると思います。

 次に、これらに対してリスクヘッジする方法を挙げます。

●委託する側からみたリスクに対する対策

  • 過去から実績のあるところと提携する
  • 多少のコストを払ってでも、1システムに複数の理解者を付ける
  • そもそもプログラムという工程をなくし、誰でも分かる形に変換する

 おそらく、すべての対策がこれまで検討され続けてきたと思います。わたしがフレームワークを構築を指示されたのも、プログラマごとに頼る要素を少しでも排除するためである、と認識しています。わたしは「君に問題がなくても10人中1人ダメなプログラマがいれば、10人全員に対してスキル上のリスクを考慮しなければならない。そのリスク対策にもフレームワークは必要になる」というような話をされたことがあります。

 今後は小規模で簡単なシステムはフレームワークで自動生成、大規模なシステムに極力リソースをつぎ込む、という流れになるのでしょうか。

●プログラムを書く権利は勝ち取る時代に?

 フレームワークによる自動生成は極端すぎるかもしれません。しかし、信用をおけるプログラマにしか仕事を任せたくないといった声は、身の回りに多くあります。結果として、いままで新人や未経験者に振られていた仕事が振られなくなる。最終的に一部の人は働いている、一部の人は会社で本を読んでいるという状況が起きるのではないでしょうか。今後、業務経験の積めないSEはどうなってしまうのか、わたしはその恐怖心がぬぐえません。

 プログラムを書く権利を得るため、今後とも無理なく頑張っていきたいです。

●オマケ

 部下のモチベーションをあげるために……という話題を耳にしますので、簡単にコメントを。彼らは「頑張らないと後でどうなっても知らないよ」ということを、ある程度認識している世代です。変に夢を持たせようとするより、素直に仕事を効率よくこなすTips的なものを授けてあげるのが、一番効果があると思います。少なくともわたしが見てきた後輩は、その傾向が強いです。

Comment(4)

コメント

Jitta

「フレームワーク」という用語の使われ方に違和感があります。
「wizard によるコード生成」は、フレームワークではないと思います。
自動生成されるのが「frame」であるなら、骨組みだけでは実用に耐えられないですよね?

forseti

Jittaさん、ありがとうございます。

製品名にフレームワークという単語が使われているのですが、中身は動くソースが全て自動生成されます。
そのソースに対して何か手を加える事は考えられておらず、仕様変更の場合は基本ジェネレータへの設定を変えてソースを全て作り直す使用方法となっています。

私もこの点は非常に違和感を持っていました、説明不足で申し訳ないです。
ご指摘の通り本来はウィザードのような名称で呼ばれるべきですよね。

意味合いが違っていても流行っている単語を使ったほうが認知されやすいからこのような現象が起きているのでしょうか。(過去にも色々とあった気がします。)

傍観者

信用のおけるプログラマにしか任せたくないのは
恐らく昔からで誰でもそうなのでは?

ただ過去には人員が足りないから猫の手も借りる状況になっていただけ。

景気の悪化と海外リソースの活用で
国内では仕事にあぶれている人がたくさんいる中で
わざわざ信用できない人に任せる必要が無くなっているのは
必然で自然淘汰なのではないでしょうか。

forseti

傍観者さん、有難う御座います。

> ただ過去には人員が足りないから猫の手も借りる状況になっていただけ。
・仕事が多く、仕事が余っている
・国内しか選択肢が無いから
この2つが無くなり、淘汰が起こっているのは事実だと思います。

ただ、日本企業の性格を見るに、上記2つの要素だけでは
「信用できない【会社】には任せたくない」となっていたと思います。
これは多くの信用の出来るエンジニアに新人のようなエンジニアをセットで作業に当たらせる事が出来ていたと考えています。

フレームワークや上記ウィザードの様なツールにより、
新人のようなエンジニアに任せる作業が(著しく)無くなった。
結果それまでは会社にフォーカスが当たっていたのに対し、
エンジニア個人にフォーカスが当たり始めているように感じています。

コメントを投稿する