この記事は、Elixir Advent Calendar 2022 10の24日目です
昨日は、私で「Eixirで機械学習に初挑戦⑥:いま、Elixir AI・MLで何が出来る?→ElixirでAI・MLを構築するメリット→2023年にElixirで攻略する領域」でした
【2023/12/26追記】
皆さまに沢山、応援いただいた本コラムの続編をアップしました
その後、Brightがどうなったかの後日談を、どうぞお楽しみください
Merry Xmas!
piacere です、ご覧いただいてありがとございます
今回は、なんだかエモいタイトルですが、社会人1年目から、わりかしマジメに思い悩んできた課題を解決したストーリーと、それをElixirでSaaSプロダクト化するに至った出来事をお伝えしたいと思います
このコラムの姉妹コラムとして、技術面の今と未来にフォーカスした下記もよろしければご覧ください
Elixir Advent Calendar: 言語カテゴリ1位+全カテゴリ2位!
例年を遥かに超える盛り上がりを見せ、堂々のトップ獲得ッ!
https://qiita.com/advent-calendar/2022/elixir
https://qiita.com/advent-calendar/2022/ranking/feedbacks
https://qiita.com/advent-calendar/2022/ranking/feedbacks/categories/programming_languages
学生時代:ITに夢を抱き、IT業界で働くことに賭けた
小学3年生からプログラミングを始め、大学でビル・ゲイツ(Windows)、スティーブ・ジョブス(Mac、NeXTSTEP)、ゴードン・レットウィン(OS/2)らの手掛けた「ウインドウシステム」に強く惹かれ、在学中、下記のようなマイクロカーネルの素晴らしい書籍に触れたことで、分散OSと、CPU独立のVM/コンパイラの研究に没入していました
当時は、OSのコードは公開されておらず、OSSという考え方自体も無かったため、情報収集だけでもかなり苦労しましたが、学内にインターネットが通っていることを知り、大学教員の方々にNetscapeやHTMLを教えることで、学内ネットワークのAdminやコンピュータルームの管理権限をもらい(当時は学生が管理者だったのです)、FTPで海外の無料配布OSソースコード(Flux、後にMacOS XやNeXTSTEPのベースとなるMach、Linuxカーネル)をゲットし、解析し、ハックし続ける毎日でした
そのまま大学院に進み、CPU独立分散OSの研究を続けるのもアリだったのですが、ビル・ゲイツやスティーブ・ジョブスが、研究では無く、ビジネスで世界を変えているのを見て、1日も早く仕事をしたいと思うようになり、当時、東証一部上場を最速で果たしていたSI系IT企業に就職することにしました
ちなみに、世間はWindows 95でビル・ゲイツのことは知られていましたが、スティーブ・ジョブスはAppleに返り咲く前で、Mac信者以外は「誰それ?」状態でした … 今では、信じられないですね
社会人1~3年目:成功しているIT企業に幻滅した
社会人1年目にしてプログラマ歴13年(笑)だったので、社会人序盤は、IT面では一切ひっかかることも無く、むしろ先輩方にプログラミングや技術を教えることもある位でした … というのが、27年前のことです
しかし、まぁまぁ堅い会社だったので、「新人は6ヶ月間は客先に出さない」とか、先進組み込みWindowsであったWindows CEの海外研修候補者として事業所から選出されたものの「2年目の社員は、幾ら仕事ができても海外研修には行かせない」とか、可能性を摘まれるような出来事もありました(まぁ、客先には、毎日、課長をしつこく口説いて、3ヶ月でデビューしましたが)
そのような、スキルや技術を必ずしも評価しないIT企業に対し、もうすでにこの頃からモヤモヤした疑問を感じ始めていたかも知れません
その疑問は、社会人になって1年半くらい経った頃、タバコは吸わないけど、情報収集のためにタバコ室に向かったある日に聞いた、
「自分らが作って納品したシステム、自分達だったら使いたくないね…」
つまり、東証一部上場を最速で果たしたIT企業で行われていたことは、ビル・ゲイツやスティーブ・ジョブスが果たしたものとは全くの別物 … イヤ、むしろ正反対だった … と言うことです
その後、プロジェクトリーダーや、取引先に入り込んで案件を何チーム分も獲得してくる戦績を残しつつも、私が考えていたことは、
「こんな腐ったとこ、1日も早くリタイアしてやる」
でした
現代の「FIREブーム」とかが流行る23年前、私は社会人2年目にして、リタイアを目指し、自身の描くエンジニアスタイルで過ごしていこうと考えました
今の不景気下では、「なんてワガママな…」と言われる位の高待遇でしたし、教授推薦してくれた大学の先生には申し訳無い気持ちで一杯でしたが、小さな頃からITに親しんできた自分には、どうしても許せなかったのです
社会人4~10年目:ベンチャー企業という可能性に賭けた
仕事は順調そのもので営業成績もトップといった感じで、一部上場IT企業におけるハイクラスポジションは半分くらい約束されたようなものでしたが、そんなものよりもリタイアの方が重要になったので、ストックオプションや持ち株での上場益を数億円、手に入れ、リタイアする気満々で、設立3年目のOSSを担ぐベンチャー企業に転職しました
毎月の給与の70%を天引きの持ち株にしてしまう位、突っ込んでいました
ただ、リタイアだけで無く、一部上場IT企業には無い、先端技術とプログラマに対するリスペクトも存在していたのは想定外の喜びでした
ディープラーニングで流行る12年前からPythonを中核に置いたり、国内ではほとんど情報を聞くことも無かった頃からLAMPやGitが使われ、自社プロダクト開発にも積極的で、素晴らしいエンジニア体験をしました
そんな企業が上場してくれることを願いつつ、自らも営業/WebマーケティングやIRを手伝い、5年くらいで上場に辿り着いたらいいな … とか考えていましたが、IRを手伝う程に、上場などムリな企業体質であることを理解してしまいました
同時に、結局は営業成績の高い人ばかりを評価し、エンジニアのスキルの高低はさほど評価されず、むしろ、イエスマンで無ければ昇進できないような構造だと言うことにも気付いてしまいました
私は技術をやりながら営業をやっていたので、さほど憂き目には合わなかったものの、同僚のエンジニアが不遇な目に合うシーンはとても見ていられませんでした
そこから私は、上場できないベンチャー企業に望みなどかけず、自分自身で年収600万円のパッシブインカムによるリタイアを構築しつつ、自分でIT事業を立ち上げる副業を始めました … 自分の事業でなら、技術の強いエンジニアを適正に評価できると考えての判断です
今のような副業ブームが訪れるより15年前の出来事でした
ちなみに、持ち株を全部売り払ったときには、第三者増資割当後で、取得価格の3倍の値段になってはいたので、上場ほどでは無いにせよ、いい投資ではありました
社会人11~20年目:理想とするIT事業で稼ぎ始めた…が…
幸い、小泉政権やライブドアブームで、市場はIT投資に活発だったため、最初の3年間は、ベンチャー企業からの業務委託と、自身の副業から始まったITパッケージ製品販売で潤い、更にパッシブインカムも年200%成長を遂げ、順風満帆でした
そろそろエンジニアを雇い、理想のIT事業を拡大していこうと思っていた矢先、「リーマンショック」が訪れます
自主事業は解約ラッシュに合い、パッシブインカムも総崩れとなり、受注IT開発に戻ることを余儀なくされました …
ただ、これは悪いことばかりで無く、大規模や超大規模なシステム開発PJに触れる、またとない機会となり、それは現在も続く大手企業向けノウハウを得る最良の機会にもなりました
また、これも今となっては信じられないことかも知れませんが、2005年頃までは「保守」という業務は受注開発においてあまり一般的では無く、「納品したら終了」がシステム開発の一般的なモデルでした
それが、リーマンショック以後から「保守」が普及したというIT業界の変化にも気付ける機会でした(もっとも当初は、開発だけでは食っていけないから、保守もやらないとリピート案件がもらえない … という世知辛い市場事情から生まれたものでしたが … それが後々「DevOps」と持て囃されることになろうとはw)
しかし、ここで凄まじい問題にブチ当たります
それは、
「スキル高い人により仕事が集中し、スキル低い人は手を抜いても許される」
という、IT業界のどこにでも横行しているであろう、身も蓋もない現実でした
出来高の差が「報酬や給与の差」として埋め合わされていれば、まだ納得がいくのですが、そんなものがあろうハズがありません … 2倍、仕事をこなす人は、出来ない人と10%も報酬が変わらない現実
思えば、前述した新卒時の一部上場IT企業にも、その後のベンチャー企業にも、さほど仕事も技術も出来ないイエスマンが昇進し、仕事と技術がデキる人が優先されない構造は存在していたので、自分自身も不当な評価を受けていたことにココで気付かされます
この非合理の先には、「スキルを学んだ者負け」という誤った考え方が生まれます … その結果、平均以下の人が「勉強しないのも自由」と盛大に勘違いする事象へと繋がります(今も普通に蔓延している病気かと思います)
そして、「顧客の御用聞き」しか出来ない経営や営業を生み出します
そんな日和見のスタンスからは、「高額な報酬をメイクして、優秀なエンジニアを雇う」という、ごくごくノーマルな発想は出てきません
それともう1つ、今から12年前の2011年、決定的な出来事が起こります
最短で本部長に上り詰めたジェネラルマネージャ(以下GM)から、冗談交じりで軽く笑われながら、こんなことを言われたのです
「35歳を超えてもプログラミングしてるのは、お前くらいだな」
その言葉は、きっと悪気など無い、他愛もないお喋りだったのでしょう
しかし、何故この業界や国が、ビル・ゲイツやスティーブ・ジョブスのようなスーパースターを生み出さず、エンジニアやプログラマを軽視し続けるのかが、この言葉の中には全て詰まっていました
GMのことは尊敬していましたが、私が打倒すべき対象であることを理解しました … それは丁度、マトリックスに囚われた人々は、救う対象ではあるが、システムに囚われている間は敵と化すようなものです
「この腐った業界をディスラプトしてやろう」と決意した瞬間でした
そのためには、まず、目の前のGMを超えてやろうと目標を立て、1年後の2015年頃には、PJ規模の大小に拘わらず、PJを始める前から計画とリスクコントロールで成功を約束できるレベルになりました
それから仕事と技術の優れた人だけを集めたスタートアップを立ち上げ、現在のスキル重視の事業スタイルを貫くようになったのです
Elixirと出会ったのも、この頃でした
社会人21~24年目:トップIT事業家になる実績を蓄える
2015年頃には、もうリタイアできるだけの条件は、パッシブ/アクティブのどちらも充分クリアしていたのですが、私には「この腐った業界をディスラプトしてやろう」という続ける理由ができたので、どうせやるなら、「トップIT事業家になろう」と考えました
その過程は、また別のコラムとしてまとめようと思いますが、一言二言で言えば、
「寝るのが惜しい程、打ち込みたいから、睡眠は2~3時間で充分」
というドM展開でした … まぁ、結果的にそれは世界的なスタートアップ起業家と同じ行動習慣だった訳ですけどね(ちなみに2020年以降は、ちゃんと寝るのがスタートアップ起業家のトレンドですw)
そんな生活を、42~44歳の3年ほど続けました
その後、2018年から「フルリモートワーク化」にシフトし、IT仕事をするのに場所を限定する必要も無くなり、営業や対客も多くをリモートにしました
世の中的には、コロナで外出自粛を余儀無くされた2020年初め以降、リモートワークが浸透しましたが、その2年前からリモートワークしてたということです
その先行性により、コロナ以降の現在も、営業/チーム活動共に、トラブルが出ることもありません
また、福岡以外の場所(沖縄/東京/アメリカ/高知/岡山/兵庫など)でのワーケーションも可能となった訳ですが、これは言うなれば、「OnとOffをもう区別しない」の究極系で、これまたドMな訳です
実際、大手企業を相手に、物怖じもせず下記のようなことを言うくらい、その専門性と確実性、そして先端技術を提供する事業展開でポジションを築き、他社がひっくり返っても不可能なレベルの企画/実装/貢献を実現できていると自負します
その頃、周りを見渡してみれば、世の中の潮流が、エンジニア/プログラマを評価する、とてもフレンドリーな状況に変わっていました … 長年、国内でエンジニアやプログラマを軽視され続けた環境に変化が訪れたのです
その一方で、技術に詳しく無い営業や経営、人事がムダに幅を効かせる状態は続いていました
こうした状況を打開することも、自身のミッションに足されていきました
技術に詳しくない経営者やマネージャは、損をするという情報発信も始めました
こうした諸々が、技術主体で「スキル」をちゃんと評価する経営やIT企業の在り方を目指す流れへと繋がっています
社会人25~26年目:実際にIT業界を変え得る活動を始めた
2020年の4月、最初の「Elixirスキルシート」を作り、運用を始めた頃が、本コラムのタイトルにある「自社から変えよう」を決心したタイミングでした
2016年に初めてElixir開発チームを組成し、2018年にはGCP中心のプロダクション開発にシフトしましたが、その約4年の積み上げを下記6つのエリアで構成し、全250件以上(Lv.1~3の各レベル毎に50~100件)に細分化されたスキルシートを完成させました
まず、Web開発者の採用や評価(後々、報酬確定)をする上で必須なスキルだけを集約し、「■レベル1:零細Webアプリ開発がこなせる」としました
その上位レベルには、「■レベル2:小規模Webアプリ開発、マイクロサービス構築がこなせる」と「■レベル3:中規模以上Webアプリ、非Web開発(ビッグデータ、AI・ML、IoT)がこなせる」を設定しています
これを私が経営/管理する3社のIT企業にてαテストしたところ、実力と実態にフィットしたスコアリングが返ってくるようになり、手応えを感じました
それをElixirコミュニティにも共有し、総勢50名を超えるβテストを展開した手応えも悪くなかったので、長年、感じ続けた不合理である「スキル高い人により仕事が集中し、スキル低い人は手を抜いても許される」に対する解決策として、以下報酬システムを規定しました
他社が、スキル評価や報酬調整、1 on 1で膨大に工数を垂れ流す一方、ウチはその負荷をほぼゼロ化しました
同時に、メンバー全員がリーダーシップを持つことで、リーダー不在でもドライブできるPJチームという方向性も生み始めています
ちなみに多くの企業が、スキルシートを作っては、上手く運用できないという現実にブチ当たるのですが、これには下記のような理由があります
- 細分化が甘く、スキル判定になっていない
- レベル分けが出来ておらず、大味なスキル分類になっている
- 案件獲得のためであればエンジニア/プログラマは協力してくれるという経営者や上位層の過信
- エンジニア/プログラマが更新したくなるモチベーションを設計できていない
特に、最後の2つは、完全に経営や営業のエゴそのものであり、エンジニア/プログラマを「人とは違う何か」と勘違いしているのでしょう
つまり、エンジニア/プログラマを人扱いしていないのです … それじゃぁ絶対に上手くいく訳が無い … そんな当たり前のことすら分かっていないということです
社会人27年目:IT業界を変え得るノウハウをプロダクト化
上記2年間で、IT業界を充分に変え得るノウハウを蓄えた結果、ウチはエンジニア調達に困ることも、社員を雇うことも無く、また多額の広告費を払うことも一切無く、凄腕のエンジニアが数時間で集まる事業体の構築に成功しました
これは、最低限の頭数のエンジニア調達にすらヒーヒー言っている世間のIT企業からすれば、信じられない程の凄まじい事業優位性と認識しています
その強みを活かして、創業初月から黒字で、それは創業からもうすぐ3年経つ今でも続いています
この1年半は、大手企業からの引合いが中心となり、キャッシュフローはますます安定の一途を辿っています(ちなみにエンジニア調達も広告費ゼロですが、案件引合いに関しても広告費ゼロなので、ダブルで収益性が確保されています)
そんな中、エンジニアを数万人レベルで抱える大手企業から、年間100名規模のエンジニア調達を達成するための相談を受けつつ、「ウチのノウハウをSaaSプロダクト化したら、あらゆるIT企業に売れるんじゃない?」と捉えたのが今年2月でした
それと並行して、Elixirコミュニティのイベントとしても、LTとしてこのテーマを情報発信し始めました
スライドとしてもまとめてあるので、ご興味あればご覧ください
Eixirスキルシートを実際に利用したことがある見習い層の方々と、パネルディスカッションも行いました
パネルディスカッションは動画もあるので、良ければご覧ください
SaaS化にあたり、FFⅩをモチーフとしたUX・UIの設計も始めました
プロダクト名は「Bright」です
採用や報酬、人事といった「ジメジメしがち」な領域に、光を当てようというコンセプトから来ています
同時に、「B」を取り払った「Right」には、「そうそうソレ」とか「正しい」という意味も含めています
Elixir/LiveViewで開発しています
またスマホ版は、Android/iOS両対応ネイティブアプリがビルドできるElixirDesktopで開発します
現在、第一弾のUIデザインがあがっており、総務省の登壇や、YouTubeライブ配信、お得意先への紹介などを通じて披露し始めたり、お客様が抱える課題をヒアリングするのに使っています
どんな機能があるかについては、年末年始にコラム化しようと思いますので、乞うお楽しみにッ
最後に
割とキャリアの早い段階から、とっととリタイアして、このIT業界にオサラバし、自身の望むエンジニアスタイルで過ごしていこうと若い頃は思っていましたが、紆余曲折あり、IT業界そのものをディスラプトしてでも良くしようと捉えるようになった訳ですが、恐らくその理由は、
「結局、ITとエンジニアが好きだから、どうにかしたい」
ってことなんだと思います
最後までお読みいただき、ありがとございます
オマケ:Elixirコミュニティと毎月20本以上Elixirイベント
アクティブなコミュニティは以下の通りです
1. piyopiyo.ex : Hands-on community for beginners to Elixir (実践型Elixir入門コミュニティ)
5. LiveView JP : LiveView & AI・ML for beginners(LiveViewとElixir AI・MLの入門コミュニティ)
6. オカザキリンビーム : Okazaki local Elixir Community (岡崎Elixirコミュニティ)
11. kochi.ex : Kochi local Elixir Community (高知Elixirコミュニティ)
12. Neos.ex : A place to connecting Elixir and NeosVR to create a new world
各コミュニティの詳細は、「Elixirコミュニティの歩き方 -国内オンライン編-」をご覧ください
毎月20本以上、開催されるElixirイベントの開催予定は、「Elixirイベントカレンダー」にてチェックしてください
Elixir生誕10周年を祝い、"Elixirの現在" に追いつける
激震をもたらした「Elixir生誕10周年」の大変動を記したコラム群を、全11本のカテゴリで日々アップデートしています
本コラムも、後ほど追加予定です
Elixir生誕10周年祭■第1弾:Elixir/Phoenixで会員制サイト構築は瞬殺
|> Elixir生誕10周年祭■第2弾:Elixir/LiveViewでJS不要のSPA+Tailwind UI
|> Elixir生誕10周年祭■第3弾:Elixir/Livebook+NxでPythonっぽくAI・M
|> Elixir生誕10周年祭■第4弾:ElixirDesktopスマホネイティブアプリ開発
|> Elixir生誕10周年祭■第5弾:ElixirでWebAssemblyにトライ
|> Elixir生誕10周年祭■第6弾:Elixir/WebSocketでVR/AR/メタバース連携
|> Elixir生誕10周年祭■第7弾:Elixirでエッジコンピューティング開発
|> Elixir生誕10周年祭■第8弾:Elixirで海外進出を目指す
|> Elixir生誕10周年祭■第9弾:ElixirでWeb3/DID/DAO
|> Elixir生誕10周年祭■第10弾:Elixir/Phoenix 1.7プレビュー
|> Elixir生誕10周年祭■第11弾:Elixir Chip(専用プロセッサ)を作る
明日は、@zacky1972 さんで「Stream.unfold/2を使いこなす〜簡単な無限/有限のループを作ってみる」です