プログラミングは役に立たないのか
「プログラミングは役に立たない」
そう感じるのは、おそらく自然なことです。
実際、現場のエンジニアからは「思っていた仕事と違う」「資料作成ばかりで開発していない」といった声が聞かれ、学生からは「仕事のイメージが沸かない」といった言葉も耳にします。
ですが、それはイメージ力の欠如ではなく、「もともと存在しないイメージ」を探しているからです。
自己紹介
私は現役のデータプラットフォームエンジニアであり、ITコンサルタントとしても活動しています。
好きなプログラミング言語はすべて。特にLinuxやKubernetesなどの技術を愛用しています。
プログラミングが役に立たない理由
さて、なぜプログラムは「役に立たない」と言われるのでしょうか。
理由は明確で、print や if、for などの基本的な構文の組み合わせだけで、実際のビジネス、たとえばECサイトのような高度な仕組みを再現することはできないからです。
例えば仮にSNSサイトを構築したとしても、そのライバルはX・Facebookなどになります。
品質・安定性・スケーラビリティすべてにおいて、巨大企業と比較されるのが現実です。
個人はおろか、そこらへんの企業ですら太刀打ちできないクオリティです。
そうなれば、企業側が新卒エンジニアに資料作成などの「安全な業務」を割り振るのは当然の判断とも言えるでしょう。
では、プログラミングを学んできた自分は道を誤ったのか?
AIに仕事を奪われる未来しかないのか?
そう感じた方もいるかもしれません。
けれど、答えは「否」です。
あなたがこのページを開いたということは、プログラムに対してどこか違和感を持ち、活かし方を探そうとしている証拠です。
それはとても価値のある姿勢です。
もし、そう感じていない方・プログラミングスクールで満足している方はお帰りくださいませ。
私は、そうした方に本物のスキルを伝えたいと思っています。
ビジネスを「街づくり」に例える
ビジネスの世界は、非常に複雑です。
それは「街づくり」に例えるとわかりやすいでしょう。
街には行政、インフラ、教育機関、住居、商業施設といったさまざまな機能が存在します。
企業も同じだと思います。
マーケティング、営業、開発、運用といった多様な部署が各機能を担っています。
その中で、プログラミングはどのくらいの単位でしょうか。
答えは「木材」レベルです。
確かに重要ですが、それだけで建物や町は完成しません。
街づくりを行うためには、より広くテクノロジーを捉える必要があります。
そこで必要になるのが、ライブラリや**OSS(オープンソースソフトウェア)**です。
- プログラム(木材)
- ライブラリ(窓やドアなどの建築部材)
- OSS(建物)
というイメージです。
ライブラリとは、PythonでいうところのNumpyやPandasです。
これらの数値処理やデータ操作は、少ないコードで高機能を提供してくれるので部材として機能します。
OSSとは、業務レベルでの機能を担える完成度を持っているソフトウェアの事です。
例えば、Webサーバ出ればNginx、DBであればPostgreSQLなどが該当します。
なぜOSSにこだわるかといえば、企業の中で作られた内製システムは往々にして保守性が低く、すぐに陳腐化するからです。
OSSは世界中で使われ、継続的に改善されています。
流行り廃りはありますが、正しく運用すれば、安定した価値を提供し続けることができます。
ビジネス応用レベルを考えたいのにプログラミングしかできていない人は、このスケール感を身に着けて欲しいです。
この考えがあるだけで、実際の行動も変わります。
実際、私自身も過去にフリマ型のECサイトをゼロから個人開発し、リリースした経験があります。
画面設計から決済、ユーザー管理、タイムアウトなど細かな機能まで作り込みました。
しかし、どれほど頑張っても、その完成度はAmazonの1万分の1程度。
運用が始まると修正が難しくなり、最終的には破棄せざるを得ませんでした。
その後、私はインフラエンジニアとしてサーバやコンテナ技術に携わるようになりました。
そこで得た知見は、以前のアプローチとは根本的に異なるものでした。
コンテナ技術を活用することで、機能ごとに処理を分離し、画面表示やデータフローをそれぞれ独立して構築できます。
そのため、抽出データを変更しても画面側に直接影響を与える必要がなく、修正が発生した場合でもコンテナ単位での切り分けが可能なため、影響範囲の特定が明確で、安全かつ迅速な対応ができるようになりました。
結果として、以前に比べて同じ機能をおよそ10分の1の工数で構築できるようになり、頭の中の設計も格段に整理されました。
加えて、各サービス単位での修正が品質向上に直結する実感も得られ、全体としてクオリティの高いシステムをより少ない労力で実現できるようになったのです。
この経験から、私は「プログラムの限界」を痛感しました。
そして思ったのです。
今後エンジニアが価値を出すには、より大きな構造を見据えた設計力と組み合わせの視点が必要だと。
最後に
現在私たちは、ビジネスにおける「街づくり」レベルを見据えたセミナーやコンサルティングを行っています。
プログラム単体ではなく、サーバ構築からコンテナ技術、さらにOSSの組み合わせによって、企業のIT戦略に貢献できるCIO人材の育成を目指しています。
また、生徒は実際のスモールビジネスの立ち上げも通して、マーケティングや営業力も実践的に身につけてもらっています。
直近では、8/16(土)群馬県前橋市にてデータ分析セミナーを開催します。
詳細はこちら
アーカイブ動画も公開中ですので、興味がある方はぜひご覧ください。
X(旧Twitter)のフォロー、YouTubeのチャンネル登録もよろしくお願いします。
LINEやメルマガ配信をご希望の方は、Xからご連絡ください。
プログラムの価値は、あなたの視点次第で変わります。
木材で満足せず、街全体を見渡す視野を持ちましょう。
きっと、次のステージが見えてくるはずです。