もがき系プログラマの日常

もがき系エンジニアの勉強したこと、日常のこと、気になっている技術、備忘録などを紹介するブログです。

CTOって何する人なの

おはようございます。

またまた、ふわっとした内容のPostです。

でもいいよね。ブログなんだし。

本題

少し前CTOの役割的なことを話す機会がありました。

自分はエンジニア畑の人間なんで、エンジニア上がりがCTOになるべきという固定概念を持っていました。

ただ、

qiita.com

↑の記事を確認する限り、そうではないCTOも存在するのだなと知りました。(自分はまだ出会ってないけど)

ただまぁどれをとっても、「技術に明るい人」がなるのは間違いなさそうです。

今まで自分はいろんな会社を渡り歩いてきました。

超スタートアップの会社、比較的落ち着いて第二創業期を迎えている会社、メガベンチャー、大企業と様々なフェーズの企業にjoinさせてもらって、それぞれのCTOの方とも当然喋る機会もありました。

どの企業のCTOも一貫して、エンジニアであり、技術に明るい人でした。

やはりベースとしては、そのほうが回るんでしょうね。

他のエンジニアの代表的なところもあるんで、技術に詳しい人でないと、説得できないでしょうし。

とまあそういった事実がある中で、先程の記事のように、エンジニアではない人がCTOになるにはどうすればいいのでしょうか。

自分なりに考えてみました。

ちなみに自分はCTOというポジションはやったことないんで、1エンジニアとして思った部分です。

実際のCTOの仕事は理解していないのでよろしくです。

1. 技術に詳しくなる

非エンジニアの人であれば、ある程度説得は出来るでしょうけど、エンジニアはそうはいかないでしょう。

他のエンジニアを説得するためにも、その人自身が技術に詳しくならないといけないと思います。

バリバリに手を動かせる人である必要はない(出来るならば出来るに越したことはない)でしょうが、その企業が抱えている問題を解決するため、どういった技術的アプローチがあるかなど、引き出しを多く持つ必要があると思います。

2. エンジニア的思考ができる

通常サービスを運用している状態では気づかない問題、いわゆる「技術的負債」なものを、理解できる必要があると思います。

「この作り方は後々痛い目見るな」とか、「このままではやばいな」みたいなエンジニアにはわかる、やばい実装というのがあります。

ただ、それはサービスは問題なく稼働しているので、非エンジニアにはわからない部分です。

このあたりの、(今動いてるけど、ホントは良くない)みたいなニュアンスを把握出来る必要があります。

3. コミュニケーションスキルが高い必要がある

エンジニア出身でない場合、おそらくですが、非エンジニア、エンジニア感の橋渡し的な仕事が多くなりそうな予感がしています。

どちらの言い分も理解できるから、そのうちそういったポジションになりそうだなと。

とにかく、どちらの話も理解して咀嚼して、それぞれの言語に翻訳するスキルと、信頼を勝ち取るための高いコミュニケーションスキルが必要だなと思いました。

しかも、非エンジニアがCTOになるという特異なパターンは、おそらく社外でも注目されるでしょうから、対外的なコミュニケーションも必要でしょう。

とまぁこんな感じでざっと書いてみましたが、改めて見ると、非エンジニアがCTOをするのってハードル高い感じありますね。

ただ、若宮正子さんみたいに、興味をもって実践してやりきるタイプの人もいるので、やってやれないことはないでしょう。

あー。だーっと書いて疲れた。

誤字とかあっても直すのしんどいからそのまま公開しちゃいます。

お疲れ様でした。