失敗しないDXって本当にあるの?『失敗しないDX』から気づいた現場のホンネ|エンジニアが語るリアルな話に思わず頷いてしまう
最近、DXというキーワードで本を読んでいます。仕事柄利用者に近い分野でITについて携わっているため、知識収集に躍起ですw。初めのころはDXの正体が良くわからなかったのですが、最近ようやくわかってきたような気がしてきます。とはいえ、実践がなかなか伴いませんけども。
DXできるところと、できないところもあり、実際に取り組むと当事者としてはちょっと大変な労働環境になってしまうかも・・・などと思うこの頃です。(ヒトとしては茨の道と思えた記事)
今日は「失敗しない!DX」を読んだ感想を書いていきたいと思います。
ちょっと専門的な言葉が多くてつまらないかもしれません。自分の発見をそのままに書いているので読み辛かったらごめんなさい🙇
どうやら朗読は電子音らしかったけど、とても聞きやすい本でした!
今でも役立つIT用語や考え方のまとめとしても良い読み物
DX化と一言で言うと、非常に難しいタイトルに聞こえてしまうのは僕だけでしょうか。DXと書いても、主語がないし、目的語がないのです。実際は主語と目的語を定めてDXするのですが、この考え方が非常にあいまいです。
データを使って物事を判断していく、データを活用していく考えには、データを証にして考えていくとあるのですが、それが難しいのです。あいまいなまま進めていくから失敗するようです。
実際、失敗はそこで止めてしまうから失敗で、その失敗も誰しも通る道と思えば失敗にならず成功するまで試行錯誤で進んでいけばよいのです(ただし予算の許す限りですが・・・)
DX化に向けての技術的な実装や伴走はエンジニアが行うけど、思っている以上に多岐にわたる
エンジニアといえば、システムエンジニアをよく聞くのではないでしょうか。SEと略して呼んだりします。プログラマがコードを改定実際に作成し、SEはその仕様を考えたりプログラマを指導したりします。
プロジェクトのまとめはプロジェクトマネージャーという人がいて、いわば上級SE。そんな3階層で作っていたと記憶しています。
でも、これはウン十年前の話。今はDXを進めるにあたってはありとあらゆる力量を持った人が必要になるので、かなり多岐にわたり、役割も細分化されているといえます。
実働部隊の構成メンバー
本書では、実際に必要な人たちが列記されていたので、その人について役割を調べてみました。
<上流工程>
ITコンサルタント
クライアントのビジネス課題を解決するためにIT戦略やシステム改善を提案します。業界やビジネスモデルの知識を活かし、全体像を考慮した戦略設計を行います。ITストラテジスト
企業の中長期的なIT戦略を策定する役割です。最新の技術動向や業界動向を調査し、ビジネス目標を達成するためのIT施策を計画します。プロジェクトマネージャー
システム開発やインフラ整備などのプロジェクトを計画し、進捗管理やリスク管理を行う責任者です。プロジェクトの予算、スケジュール、品質の確保に注力します。プロダクトマネージャー(以前記事にしたのでこちらもどうぞ)
製品やサービスの企画・開発から運用までの全体を統括する役割です。ユーザーのニーズや市場の動向に合わせたプロダクト設計や改善をリードします。データサイエンティスト
データ分析を通じて、事業に役立つインサイトを提供します。ビッグデータや機械学習を駆使してデータを解析し、企業の意思決定を支援します。最近特によく聞きます。
<開発系システム>
システムアーキテクト
システムの設計全体を担い、技術的な基盤を構築します。システムの性能や拡張性、セキュリティを考慮して、最適なアーキテクチャを設計します。システムエンジニア
顧客の要件をもとにシステムの設計や開発、テストを行う役割です。業務の流れに合わせたシステムの仕様決定や詳細設計を行います。アプリケーションエンジニア
ソフトウェアやアプリケーションの設計、開発、実装を担当します。ユーザーの操作性や機能性を重視したアプリケーションの構築を行います。組み込みエンジニア
家電や自動車など、特定の機能を持つデバイスに組み込むソフトウェアを開発します。ハードウェアと密接に連携するシステム設計が求められます。プログラマ
ソフトウェアやシステムを実際にコーディングする役割です。開発要件に基づき、プログラム言語を使って動作するコードを記述します。
<開発系ネットサービス>
WEBディレクター
Webサイトやサービスの企画・設計から開発、運用までを総括します。コンテンツの内容やデザインの方向性を決定し、チームの進行を管理します。UI/UXデザイナー
ユーザーインターフェース(UI)やユーザーエクスペリエンス(UX)の設計を行い、ユーザーにとって使いやすく魅力的なデザインを提供します。フロントエンドエンジニア
ユーザーが実際に目にするWebページの設計や実装を担当します。HTMLやCSS、JavaScriptなどを使って、UIの操作性や表示の最適化を行います。バックエンドエンジニア
サーバーサイドのシステム設計や開発を行います。データベースやAPIなどの設計と実装を担い、フロントエンドと連携して動的なWebサービスを提供します。
<インフラ系>
ネットワークエンジニア
ネットワークの設計や構築、保守管理を担当します。データの安全かつ迅速な通信ができるよう、ネットワーク環境の最適化を図ります。データベースエンジニア
データベースの設計や運用管理を担当します。データの整合性やアクセス速度を重視し、システム全体のパフォーマンスを支える役割です。サーバーエンジニア
サーバーの設計・構築・管理を行います。システムが安定して稼働するよう、ハードウェアやソフトウェアの設定や最適化を実施します。セキュリティエンジニア
システム全体のセキュリティ対策を担います。脅威の分析や防御システムの構築を行い、情報資産を守ります。クラウドエンジニア
クラウド環境の設計や管理を行います。企業のシステムをクラウドで運用するための設計や、コスト効率とセキュリティの両立を目指します。
<その他>
テストエンジニア
システムやソフトウェアが仕様通りに動作するか検証します。バグの検出や品質改善を行い、ユーザーに安定した製品を提供する役割です。セールスエンジニア
製品の技術的な知識を活かして営業を支援します。顧客のニーズに合った技術的な提案を行い、製品の導入や導入後のサポートも担います。サービスエンジニア
システムや機器の保守・メンテナンスを行います。現場での修理やトラブル対応を通じて、サービスの品質を確保します。AIエンジニア
人工知能(AI)技術を活用したシステムやアプリケーションの開発を担当します。機械学習やディープラーニングを駆使して、データから知見を引き出す役割です。ブロックチェーンエンジニア
ブロックチェーン技術の設計や開発を行います。分散型台帳技術を活用して、安全性や透明性の高いシステムを構築します。
数えてみたら19個ありました。たぶん、まだ増えたりします。実際は、一人のエンジニアが全役をこなすこともあるのですが、ここで注目は一人のエンジニアだけではなかなか良いものができないということです。
一覧表でまとめるとこういう関係性でしょうか。
チームを組んで、メンバーそれぞれの得意分野を発揮して協力して進めないと良いものはできないようです。これは技術面のことであって、ユーザーのノウハウや意見が取り入れられるのが大前提ですけども。
システム開発言語8選も興味深かったので書いておく
①C言語:50年以上の歴史を持つ。高性能だけど難易度は高い
②C++言語:C言語を拡張した言語。オブジェクト指向で開発効率アップ
③Java:オブジェクト指向言語。ライブラリ豊富で開発効率さらに高い
④JavaScript:WEBシステムの画面開発。③JAVAとは無関係
⑤Python:AI開発やデータ分析に実績がある言語。コードが分かりやすい
⑥GO:シンプルでC言語なみに速度が速い
⑦SQL:データベースを操作しデータ抽出や更新を担う
⑧R言語:データ解析に特化した言語。短いコードで統計解析ができる
聞いたことあるものから、知らないものまであります。他にもあるけれど、これだけ知っていれば何とかなるかも。いや足りないか。
JavaとJavaScriptは全然無関係というのはおもしろいです。紛らわしいけど。
エンジニアを困らせる地雷:貴方は嫌われ、プロジェクトは破綻する
あー、こういうのあるあると思うことが載っていました。進めていくとよくあるケースなので取り上げたいと思います。5つはIT分野ではよくあります。笑
①ITなんでも屋扱い
ITだから全部知っているわけではないのです。先ほど書いた通り、ITの専門分野も19通りありましたね?ITを生業にしている人でも、詳しくない分野を聞かれたら、ネットで調べるところから始まるのです。つまり余分な作業になり非効率なのです。
聞く側は、まずは自分で調べてみてわからなかったら、誰が詳しいか聞いてみると良いかもです。その人が詳しいのだったらお願いできるし、違っていたら他を当たることができます。
今はネット検索すればわからないにしてもヒントなどでてくるので丸投げではなくて、ちょっと調べてその上で聞いてみるとよろしいかと思います。ネット情報も間違っていることもあり鵜呑みも良くないので、全く聞くなではなく、相談することも大事だと思います。
②セキュリティに無関心
紙媒体のものは、効率が悪いけど、すぐには無くならないというメリットがあります。確かに火事や災害で物理的に消失はあるのだけれど、PCのメモリはハードディスクのように、生涯や手違いによって一瞬で消えるということはないのです。
デジタルデータの方は一瞬で消えてしまうことがあります。最近のハッキングは巧妙で、バックアップも含めて暗号化や消去してしまうのです。それこそ一瞬で使えなくなってしまうのです。
なので、パスワードが超簡単すぎたり、付箋で貼っている人がIT化とかDXとか言ったりされるとエンジニアは付いていきたくなるのです。
とはいえね、全部が全部強固なパスワードで守ろうとすると現場は大変です。漏れるリスクが少ないところではセキュリティは多少緩くて良いと思います。もちろん、アクセス範囲は絞られるべきでありますが。
③指示や説明があいまい
IT分野の人は融通が利かないと言われます。ふわっとしたことを伝えてきて、はいこれでいい感じお願いときて、想像通りのものができないと、これ違うあれが違うと言われます。これから融通が利かないと言われる所以です。
本来は、しっかり仕様を決めることは大切なのです。最近アジャイル的なやり方がすべてを解決するような論調がありますが、仕様を決めるのはアジャイルでもウォーターフォールでも重要なことなのです。どちらの進め方が適しているかということです。
実現したいことはしっかり描いておかないと、後になってこの機能が欲しいとなっても、アジャイル的な方法でもできないことはできません。
④学習する気がない
IT専門家の領分であるIT用語については、一般ユーザーがそこまで理解できなくても仕方ないという考え方は一理あります。けれども、流石にそう主張するにはITが浸透し過ぎています。
たしかに機能を使うだけだったらそれでも良いかもしれません。しかし、IT技術を駆使して多くのリターンを得たいならその難しいIT専門家の領分にも、自分なりに勉強して理解していかないと多分無理だと思われます。
全然知らないと言っていると、将来の前述①②③の予備軍になってしまうのではないかと思います。例えばクラウドという言葉でピンと来なかったら勉強はかなり足りないようです。
ITに関する打ち合わせやプレゼンが行われる機会があり、分かるように説明するのが前提です。ケースバイケースですが、ITを駆使して積極的に成果を得ようとする場合には、トップの方もある程度の知識が必要になってきます。そうしないと打合せやプレゼンなどで、全体のレベルを下げて打ち合わせをしなくてはならなくなっては、それがロスになったりします。
打合せやプレゼンで頻繁に出てくるワードが素人にはわからないというのではなく、ある程度自分で学習するというのは必要になってきています。
⑤味方になってくれない
要求を一方的に押し付ける。不具合を必要以上に糾弾する。何かあったときに庇わない。IT業界の事情を知らないとやってしまいがちです。ITは線路や道路のような、デジタル上のインフラだと思わなければなりません。
例えば、災害で道路が壊れてしまい目的に到着できなかったとします。これは仕方のないことだと皆さん思うことでしょう。IT世界の中でも時として災害級の事案が発生します。分かる人は察してくれるけど、分かってない人は、「なんで?」となってしまい、必要以上に責任を追及してしまいます。
ユーザーも、線路や道路のようにたまに不具合を起こすかもしれない、IT基板に乗っていることをよく理解しておくべきです。その上で復旧に当たる当事者の味方になってあげることが従事する担当者への安心感になります。
他にも面白い点がありますが、長くなってしまったので、この辺で。
いろいろなやらかしが教訓になって内容に引き込まれました。
3行日記:iPhoneのアイコンの色が夜変わるようになったみたいですが・・・
最近のアップデートで昼間と夜間でアイコンの色が変わるようになりました。慣れだと思いますが、夜間のアイコンが暗い色で見づらくなったのは自分だけでしょうか?
1年前:窓口振り込みの手数料が高いことにびっくりしました
子どもが進学するようになると、授業料の払い込みが必要になります。その際まだまだ窓口振り込みが存在するのですね。どうやらネット振り込みでも振り込めないことはないのですが、それだと相手が本当に入学者からの振り込みが特定できなくなることがあるそうなので。
そんなことで、不意にされたらたまったものではないので、しっかりと相手指定の振り込み用紙を使って窓口振り込みをしているのが実情なようです。
それにしても四捨五入すると1000円行きそうな手数料だった気がします。結構お高いですね。
長くなりすみません。最後まで読んでいただきありがとうございます。記事が気に入られましたらフォローやサポートをいただきありがとうございます。また、お気軽なコメントもお待ちしております。