ITエンジニアの仕事の勘所について④

全工程共通

頭雲抜け?エンジニアが視野を広くすべきことについて

みなさま。
WordPressによるブログ投稿第23弾を書いている加賀美(カガミ)です。
みなさま、おはようございます。

さて、勘所シリーズも第4弾となりました。
けっこう続きますね。

実は、このシリーズは第13弾まで続く予定です。
。。。。はい、長いですよね。説教くさくて申し訳ございません。

けれど、カガミも今40代と、思いっきり説教くさい話が好きなオジサンなのであります。。。。

さて、今回は『視野を広く持つ』をテーマにした内容となります。
おそらく多くのエンジニアがそうであるように、このことはカガミも苦手分野であります。
ですが、今回は(も?)自戒を込めて、このことについて書き綴ってゆこうと思います。

それではみなさま、本日も最後までよろしくお願いいたしますm(_ _)m

不具合ドハマリ伝説!?RDBの性能が出なかった体験について

それではさっそく本題に入りますが、カガミがとあるツール開発で経験した小話をお聞きください。

その現場ではRDBに数億件というデータが格納されていて、テーブルのカラム数もそこそこあり、それもあってか開発していたツールで性能問題が発生しました。

現場のプロパーの方から何としても性能改善して欲しいとのご要望を受け、カガミはSQLのパフォーマンス改善に四苦八苦しておりました。

RDBのクエリであるSQLは、書き方1つ、またはインデックスの追加1つで劇的に性能が改善することがございます。

ですが、この現場では、それでもお客様のご要望を満たした性能とはなりませんでした。
性能改善はある程度しましたが、それでもお客様はご納得はされなかったのです。

カガミ自身は途方にくれておりましたが、現場プロパーの方は立場上プロジェクトの責任もあるので必死です。

仕事中の日中に、急遽本屋へ駆け込み、そのRDBに関する技術書を購入。数百ページある技術書をあたりをつけて読み込むことにまでなりました。

ここでカガミの普段のツィートをまじめに読まれてる珍しい方は、この話の結末がもうお見えかもしれません。

そうです、結局ツール開発で使用してたPCのメモリーを増設することで、今までの苦労は何だったのか、このパフォーマンス問題は劇的に改善したのでした。

さて、カガミがなぜ長ったらしくこんな自身の失敗談を述べたかと言うと、お客様も私もパフォーマンス改善にハードウェアの事は視野に入れていなかったからになります。

性能改善の試行錯誤の途中で、早い段階から「RDBの性能改善なら、そもそもハードウェアのスペックを増設してみたらどうだろうか」とより広い視点で考えていたなら、もっと早い段階でこの問題を解決できたかもしれなかったのです。

1つの道を究めるのも重要。けどお客様が真に望むのは問題解決。

さて、前章のお話でみなさま何を感じられましたでしょうか。
カガミは知識が浅いな~、でしょうか。
確かにその通りかもしれません。

けれど、膨大なITに関する知識を毎日吸収していたとしても、こういった問題は視野を広く持つ意識が無いと宝の持ち腐れになるかもしれません。

知識をたくさん持つこと。
しかも、ITだけでなく、時事問題や日ごろのニュースや、何にでも興味を持つ心構えが大切かもしれませんね。

そして、押してもダメなら引いてみよう、みたいな、詰まったら早い段階で発想を変えようとする気持ちも大切かもしれません。つまり、話が戻りますが視野を広く持つことです。

なぜならこの現場での話でもそうですが、お客様が望むエンジニアは、ある言語に詳しいエキスパート、というよりは、最終的な納品物が希望通りのモノを作れるかであるからです。

今回の例で言えば、インデックス追加のコマンドが調べなくても打てる、といった技術的な詳しさではなく(それはそれでエンジニアとしては重要ですが)、納品物であるツールが業務で使用しても影響が無いくらいの性能で動いてくれるかであるからです。

これは、よくよく考えてみれば当たり前のことですよね(^^;

そして、発注サイドも予算は限られており、ツール開発ならこの方、RDBの性能問題ならこの方、とはなかなかならないケースも多いからです。

このように、プロジェクトに想定外の問題が発生したら、限られた予算の中で、その現場に投入された要員が、臨機応変に対応する必要が出る場合がございます。

つまるところ、現実の現場で働くエンジニアはぜひ視野を広く持ちましょう。
よくよく考えてみたら、その問題、そもそもITを使わなくても解決できることかもしれません。。。

結びに

今回は、ITエンジニアのお仕事の勘所シリーズの第4弾として、エンジニアは視野を広く持つべし、と言った内容の投稿をさせて戴きました。

みなさま、面白かったでしょうか。

そういえば、視野を広く持つといえば、自分が担当している部分の全体スケジュールや、対象システムの全体像、このプロジェクトの目的、などといった事に意識を向けることも重要だとカガミは考えております。

全体スケジュールを見れば、今は忙しいけれどあと数日で山場は抜けるとわかったり、
システムの全体像を知れば今目の前の仕事を自分はどう動くのが望ましいのかわかったり、
プロジェクトの目的を知ればしんどい現場でもこのお仕事がお客様の会社にとっていかに大切なことであるかがわかったりして、心が挫けず頑張れるかもしれません。

エンジニアは「木を見て、森を見ず」とはならずに、ぜひとも「木も森もちゃんと見れる」ようになりたいものです。
自戒を込めて!!

それでは、今回は以上となります。
最後までお読み戴きありがとうございました。

※次回は『脳トレする』といったテーマで、引き続き『勘所シリーズ』を投稿する予定です。













私たちみんなに、今日も良いことありますように✨✨✨

タイトルとURLをコピーしました