• リフト株式会社
  • マーケティング部
  • 関根謙志郎

外国人エンジニアにレガシーな環境だと思われないための分析と解決策〜技術・ツール編〜

目次

1-3

前編にあたる「職場環境編」では、プロジェクトの風通しが悪くなっていく過程に焦点を当てました。今回はより具体的に、

「こうすればエンジニアの生産性が上がるのに」

という攻めの姿勢で課題に対し改善案を提示いたします。

技術的課題①:エースエンジニアが退社し、プロジェクト全体を把握している人がいない。

ドキュメントを整備して、一部の人間が退社しても仕事が回るようにすることはプロジェクトマネジメントの鉄則ですが、案外できていないことが多いです。というのも、優秀なエンジニアはドキュメントを書かなくてもコードを読めば理解できるため、ドキュメントを執筆するモチベーションが低いからです。その代わりに

「プロジェクトを理解するいい勉強になるから」

という理由で、新入社員がドキュメントを作成させられるという事態が頻発します。

そして、プロジェクトの炎上や、人間関係のいざこざでエースエンジニアが退社し、残ったのは仕様や運用をよく理解していない当時の新入社員が書いたドキュメントだけ

こうした事態に陥らないように、定期的に手を止めて、全体でソースコードや使っている技術を共有する会を開くと良いでしょう。優秀なエンジニアも、一から十まで説明するドキュメント作成は気が進まなくても、

「今回のコードを書く上で詰まったところ」

「他の人がコードを読む上で難読だと感じる箇所」

についてLT(Lightning Talk、5分程度の短いプレゼンテーションのこと。)をするのは乗り気ということが多いです。社外の勉強会や交流会で話のネタになりますし、自分のエンジニアとしてのスキルアップにもなるからです。

解決策

プロジェクトの技術的な内容についてLT会を開く。

技術的課題②:他のエンジニアが何をやっているかわからないために、デバッグで躓く

①とも共通していますが、ある部分のコードを読み書きしているのが一人だけだと、推奨されていない書き方や、分かりにくいロジックのまま放置されることが多くなります。

シニアエンジニアが後輩に対して

「この箇所はこういうふうに書くときれいになるけど、なぜそういう書き方をしてるの?」

と、教育を兼ねてコミュニケーションを取るだけで、ずっといいコードになります。

解決策

定期的にコードレビューを行い、技術的負債が残らないようにする。

技術的課題③:バグを報告した人がバグ修正の義務を負う

皆さんの中にも、同居人と生活をしていて

「部屋が汚いと思った人が掃除をする」

「日用品は足りなくなったと気付いた人が買ってくる」

というルールを作り、その結果、お互いに相手が気付くようにさせて、仕事を押し付けあって、全員が損をするという事態に陥った経験があるかもしれません。

それと同じことがテスターの現場でも起こってしまい、積極的にバグ報告ができなくなったしまう環境が出来上がります。こういうときは、報告する人と直す人を分けて、バグを報告するインセンティブを妨げないようにすると良いでしょう。

解決策

バグ報告とバグフィックスの責任を分ける。

ツール的課題①:同じチーム内の情報共有に電子メールを使っている

ビジネスメールの作法に則って文面を作るだけで、無駄な労力を使ってしまいます。社外への連絡ですと電子メールは欠かせないシーンは依然として残っていますが、社内の情報共有にSlackなどのチャットツールを導入するだけで、コミュニケーションコストが大幅に削減できます。

Slackの良い点は、LINEグループなどと異なり、グループから抜けても、再びjoinすれば過去ログを遡ることができます。無料版ですと、過去ログのストックに制限があるなどの不便がありますが、LINEなどの他のツールと比較しても

「絶対に見るべき情報」

「見ても見なくてもいいが、流し読みしておいた方がいい情報」

「必要になったときに初めて検索して見ればいい情報」

など、優先度や通知の設定を細かく決めることができ、不要な情報に振り回されることが減ります。

解決策

チーム内のコミュニケーションにSlackなどのチャットツールを使う。

 

ツール的課題②:Excel方眼紙を使っている。

表計算ソフトとしてExceを利用する分には良いのですが、中には「ネ申エクセル」と揶揄されるような、過剰にセルの結合を行ったり、全体を把握できないような複雑な関数を用いたExcelファイルをエンジニアは嫌います。

そういったファイルは、データを整形するのに多大な手間が掛かるため、再利用がしづらく、業務の効率化にとってマイナスです。表計算ソフトとしてではなく、活版ソフトウェアとしてExcelを用いて、書類や契約書を作成しているところもありますが、そういった作業をプログラマに任せるのは止めましょう。パソコンを使った作業という意味では同じですが、やっている作業は全く正反対で、優秀なプログラマほどそういった再利用ができず、効率化も行えない作業を苦痛だと感じます。

Excel方眼紙にデータを纏めるまえに、CSVやJSONなどの、プログラマにとって整形しやすいデータにまとめて、後々RPAなどで再利用できる形にしておきましょう。

解決策

JSONやCSVなどのきれいなデータ構造のフォーマットにする。

※もちろんプログラマ毎に好みのファイルが異なるため、自社のプログラマとコミュニケーションを取りつつ行うのが大前提にあります。

 

ツール的課題③:セキュリティのためと称して、レガシーなアプリケーションを強要する

古い体質のIT企業の中には、長年使い古された「インストール可能なソフトウェア一覧」なるファイルがあるところもあります。エンジニアの生産性を大きく左右する開発環境を選ぶ場面で

「サクラエディタしか使ってはいけない。なぜなら、今までそうしてきたからだ。」

考停止したルールを強要されれば、この職場では何かを改善させることを良しとしないと見られて、腰掛け程度にしか思われなくなってしまうでしょう。

確かにセキュリティ的に使用するソフトウェアを制限するのは重要ですし、明らかに問題のあるソフトウェアとして有名なものインストールを制限するのは妥当なものです。

しかし、エンジニア側が納得できる理由もなく禁止すれば、不信と不満が生まれます。

解決策

合理的な理由を説明できないセキュリティ対策を講じない。

 

まとめ

今回の記事を読んでいただいた読者様は、

「わかってはいるけどできてない」

「思っていたよりも当たり前にできていることばかりで安心した」

「変化の早い時代についていくのは、覚えることが多くて大変だ」

と様々な感想を抱かれたかもしれません。

一番大切なのは、

「今のままで大丈夫なのか?」

「効率化はできないか?」

「無駄な努力をしていないか?」

と立ち止まってみて、ITエンジニアと一緒に考えてみることです。

本記事が改善に向け、一歩踏み出すための糧となりましたら幸いです。

リフト株式会社からのお知らせ

弊社ではエンジニアを採用したい企業様のニーズに全力でお応えしています。サービス詳細につきましては下記バナーよりお気軽に資料請求くださいませ。

↓グローバルITエンジニアの派遣サービス

Click me

↓即戦力グローバルITエンジニアの紹介サービス

新規CTA

 

 
関根謙志郎

マーケティング部

福島県内の高校卒業後、東北大学に入学。在学中は硬式野球部に所属。英語学、心理学、英語教育学を専攻。卒業後は社会を構成する『ヒト・モノ・カネ・情報』が遍在することで生じる歪み(社会問題)をビジネスを通して適正化するというミッションに共感しリフト株式会社に入社。現在はマーケティングを担当。