うめぞーコラム

思ったことを書き綴るだけの内容。IT業界ネタ中心。

働く環境

COVID-19の影響で、Work From Home (WFH, 日本企業はテレワーク等と言ってますね)を強制的にしなければならない状態になっています。IT業界以外の人から見ると、ITの人たちはパソコンさえあればどこででも仕事ができるんでしょ?と思われています。

 

幸いなことに、私のところではほぼリモートワークになっています。しかし、どうしても出社しなければならない人たちがいるのも現実です。

 

「書類」で回している業務

日本固有の「印鑑」ビジネスが悪しき形態だ!と声高に叫ばれています。業務はまだまだ、紙という媒体に依存しています。昭和の時代から申請・承認行為は紙に印鑑を押すものであります。紙とハンコの依存性を少なくする必要がありますね。できるだけ「電子化」「データ化」して、Web画面上でその作業が終わるようにすることが望まれます。その場合、要素技術として何が必要かというと、データの入出力としての「画面」(Webブラウザが一番良い)、データのチェックや計算などの「ルール」(ルールエンジン等)、進捗を管理する「プロセス」(タスク管理)、入力や計算をしたデータを格納しておく「データベース」です。

この、「画面」「ルール」「プロセス」「データ」を疎結合化するようなアーキテクチャを採用してサービスとして構築しておくことで、アプリケーションの構成としては、どのサービスをどんなタイミングで呼ぶかに集中することができます。

 

他社とも同じ業務をしているから、販売しているパッケージでも良いのではないか?という声も聞こえてきますが、お客様の業務は他社と全く同じでしょうか?全く同じなら、同じ業務を行っている会社同士がくっついた方が、投資もリスクも少なくリターンが望めるでしょう。是非M&Aをお勧めします。(笑)

ところが、現存する殆どの会社の場合、その会社の考え方に基づいて活動しているはずです。大体似ているけど、ちょっと違う部分が必ずあります。その部分がパッケージでできない場合、パッケージをカスタマイズする・パッケージは部分利用として他は人力で行うの二択になっていませんか。

 

パッケージをカスタマイズすることで、沼に落ちやすくなります。沼とは、カスタマイズを進めていくことで本来のパッケージの姿ではなくなる沼、カスタマイズした部分がスパゲッティになってしまって、それ以上のカスタマイズができなくなる沼、カスタマイズ部分によって製品の脆弱性を修復するためのパッチが充てられない沼 等はよく知られた沼です。あまり知られていない沼として、カスタマイズを提供会社にお願いすることで、自社のノウハウが知らない間に製品化されてしまい、他社との差別化ができなくなる沼、パッケージとカスタマイズの呪縛に囚われ、業務側が本来やりたいことができなくなる沼、コロナウィルス等の外的要因に起因する変化に耐えられない沼などがあります。

私的には、もしパッケージを使いたい場合は「素のまま」で使うことをお勧めします。自社特有の要件はパッケージの外部に作るか、パッケージをやめて変化に耐えられるようなスクラッチ開発をするかをお勧めします。強いて言うと、それらが全部自宅から何らかの手段でアクセス可能な「クラウド」上にあると最強です。自宅にいながら電話会議で要件を聞き出し、修正・テスト・リリースができるとなると、今後も自宅に籠もらなければならないような事態に陥っても業務は続けられる可能性が高いです。

 

 

クローズドな環境

世の中、晴れた空にプカプカ浮かぶ雲の中で仕事ができることばかりではありません。セキュリティという観点では、アリ一匹の侵入も許さぬ屈強なシェルターの中で外界と遮断した世界で仕事を行うのが良しとされています。

ですが、コロナウィルスのパンデミックのような状況では、クローズドな環境に振り切れていると不具合がたくさん出てきます。外出禁止令が出ているにも関わらず、探偵やスパイのごとく監視の目を盗んで、まさに「命を掛けて」仕事に出る必要があります。

 

USBメモリとかMailとかで情報が盗まれて売られている。」

こんな不祥事が過去によくありました。

残念ながらモラルが欠如している人はいます。自分はそのつもりでなくとも、結果的に情報流出につながってしまった、そういうこともあるでしょう。私自身、USBメモリがある時代に、サーバに持ち込めるのはフロッピーディスク1枚という現場で働いていたこともあります。これはフロッピーディスクの容量が1.4MBしか無いので、持ち出されたとしても被害が大きくならないという観点での対策でした。携帯電話は建物自体の電磁シールドにより圏外、WiFiも利用できないので外界との通信は遮断されていました。セキュリティについては物理・論理的な対策はもちろん必要ですが、過度にやりすぎると不便でしか無く、コストに見合わない施策になります。

セキュリティの技術としては終りが見えない追いかけっこが続くと思うので、契約書というか誓約書というか、それで縛る事が意外と良いかもしれません。情報の流出が本人の故意であった場合、迷惑料もプラスで被害総額全部、個人に請求するぞ 的な。それでも映画のヒロインのように、命を掛けてやる人はやるのでしょうけど... 

フロッピーディスクなら許す」みたく、完全に封鎖するのではなく必要最低限の利便性は残しておくのが良いと思います。

 

 

作業者のPC問題

セキュリティと利便性は相反する事象であり、バランスを取る必要があります。セキュリティに関してはおそらく今後、技術の発展と見直しが入るはずです。問題は、作業者のPCです。

ITの世界でもクローズドな環境はまだまだ多く、サーバーご本尊と専用線で結ばれた事務所の狭い部屋で、一人あたり横幅60cmしか割り当てられていないスペースで、メモリが4MBしか載っていない、しかも3世代前で中性能くらいだったPCで作業している方々がたくさんいらっしゃいます。ほんとに。お気の毒です...

3世代前で少ないメモリしか無いために、PCが遅くて人間が待っている状態が多発している環境は、まったくもってヨロシクありません。生産性を1/100にしていると言いたいです。

「そんなこと言ったって7万円のPCを一人一台付与して、100人いたらそれだけで700万円だぞ。一台あたり20万円のPCが良いのはわかるが、減価償却の手間もかかるんだぞ。」

って声が聞こえますが、だから何?です。そこをケチることで、社員の生産性が著しく落ち、長時間労働になり、モチベーションも落ち、開発品質も落ち、必要な時に力を発揮できないストレス等は、減価償却の手間などどうでも良いくらい、重要な話です。開発環境が良くなると、全てがポジティブに向かい、人数も少なく品質良く開発して、結果的にコストも抑えられるというものです。

「さっき言ってたように、全部クラウド上で動かして、手元はWebブラウザだけアレばいいじゃないか?」

ごもっとも、そういう環境が自在に使えるのであればそれでも構いません。その場合は、回線速度、CPU、メモリ、ストレージの割当、使いたいアプリやモジュールが簡単にインストール・利用可能である環境に制限されます。まだ全てが対応できていません。それならば、今は少しでも良いノートパソコンでストレス無く作業ができ、より良い技術を気軽に試せる環境を用意することのほうが重要に思えます。

 

私が伺うお客様の作業環境も、もうすこし良くしてあげてください!

企業の基幹システムの開発者であれば、Core i7相当、メモリ16GB、ストレージ512GB、IEEE 802.11nWiFi は最低限必要です!私もこのスペックで2015年にMacBookProを購入してもらいましたが、ほぼ5年経った現在も、全く不満なく使えています。

将来のことを考えれば用意されたクラウド環境での開発も良いのですが、それだと「泥臭い」技術を習得するチャンスが少なくなるんですよね... 自前の環境で試せる「余裕」は必要だと思います!

 

 

技術のお話

今日のお話の中で、レッドハットでご用意している技術・製品は下記のとおりです。

プロセス管理:Red Hat Process Automation Manager

ルールエンジン:Red Hat Decision Manager

データ連携:Red Hat Integration

クラウド環境:Red Hat OpenShift Container Platform