メインコンテンツへスキップ

スタートアップCTO必見!成功するためのハンドブックとは

·2 分
2025/03 スタートアップ CTO マネジメント 技術 ベストプラクティス

スタートアップCTO必見!成功するためのハンドブックとは

引用元:https://news.ycombinator.com/item?id=43337703

tptacek 2025-03-11T23:17:06

俺はこういうの考えるとき、まず深く理解してるセクションに飛んでみるんだ。そこで言ってるのは“最後の瞬間にコンプライアンス証明書を取ろうとするな。PCI DSSやSOC 2の監査準備は長いプロセスで、ほとんどのスタートアップで6ヶ月から12ヶ月かかる。早めに始めて継続してコンプライアンスを維持する方が、遅れて再作業するより安上がりだ”ってこと。でも、俺は逆のアドバイスをするよ。SOC2の証明は簡単に取れるし、購入注文がない前に取得するのは無駄だと思う。あらかじめやっとくべきことはあるけど、SOC2を予定してなくてもやるべきだよ。それはシングルサインオンを設定したり、保護されたgitブランチを持つことみたいな、単純なベストプラクティスなんだ。ほかにこの文書の部分を確認したい人いる?俺は大半に対しては反論する資格がないと思う。

femiagbabiaka 2025-03-11T23:59:27

いい方法だね。俺はデータベースでCtrl-Fしたけど、一般的に情報はいい。ひとつ気になったのは、2025年にスタートアップがSQLとNoSQLに注力する必要はないってこと。人気のSQLデータベースではJSONサポートがいいから、PostgreSQLかMySQLを使えばいい。エンジニアが得意な方を選んで、CloudSQLかRDSを使えばバックアップやレプリケーションの面倒を見てくれるし、BI用にリードレプリカを使うと、しばらくは十分だよ。

Swizec 2025-03-12T03:07:17

>使用するリードレプリカはBIツールにとって良い
2、3のリードレプリカを用意して、メインに書き込み、レプリカから読み取るようにクエリを分ければ(多くのモダンORMはこれに標準対応してる)、ほとんどのスタートアップのワークロードで日々数百万のアクティブユーザーにスケールアップできるよ。BIの難しいところは、情報が必要な人がSQLを学びたくないことだ。SQLを使える人でも、スキーマの変更に追いつくのが大変なんだ。

edoceo 2025-03-12T03:44:27

俺はMetabaseを勧めるよ。Metabaseはread-replica-3を指していて、Metabase APIを使うと、テーブルやフィールドについてのメタデータを追加できるから、BIの人たちがポチポチでレポートを作れるし(スキーマの変更にも適応できる)、スキーマ変更は大体ビューで解決してる。

datadrivenangel 2025-03-12T13:12:48

BIの難しいところは、アプリ開発者が安定したデータモデルをサポートしたくなくて、スキーマを頻繁に変更しちゃうことが多い。それにBIの人たちが何を求めてるか分からなくて、脆弱な統合に苦しむのも問題。アプリデータベースにアナリティクス用の報告ビューを追加するのがいい方法だよ。

melvinroest 2025-03-12T08:24:32

>情報が必要な人がSQLを学びたくない
データアナリストはSQLには慣れてるよ。どの“データ分析をキャリアにする”コースでもSQLを教えるし(querynomiconが教えることの約70%)。

Swizec 2025-03-12T14:09:43

>データアナリストはSQLには慣れてる
そうなんだ!でも、スタートアップでデータアナリストを雇うのは見たことがない。なぜか俺はいつもエンジニアの仕事の傍らでこれをやることになる。

CalRobert 2025-03-12T05:13:37

確かに、パンデータスで複雑なパイプラインを作ってるのには驚いたよ。誰かがSQLを使いたくないからって。

SOLAR_FIELDS 2025-03-12T01:56:28

俺は最近同僚に、RDBMSが過去10年でJSONサポートで得た大きな進歩について話してた。例えば、Postgresのjsonbフィールドで最初のレベル以下のキーは約10年前はインデックス不可だった。今では、GINインデックスとか、他にもかなり洗練されたオプションが使えるよ。

xp84 2025-03-12T03:07:39

同意する。今のところ、Postgresをメイン(またはおそらく唯一の)データベースとして使う理由を思いつかない。RDBMSを補うJSONフィールドが行く道のように思う。

SOLAR_FIELDS 2025-03-12T14:59:47

最近のデフォルトは『Postgres』だね。他の技術使いたかったら理由を説明しなきゃいけない。これでうまくいってるよ。

DanielHB 2025-03-12T18:40:44

ハハハ、その通りだね。特定の技術を使う理由じゃなくて、Postgres以外を使う理由を説明しなきゃいけないってのが面白い。

friendzis 2025-03-13T11:21:20

これがデフォルトの意思決定プロセスだべ。現状の理由分析もしっかりしないと。色んな提案が無駄に終わることが多いんだ。

closeparen 2025-03-12T22:19:42

>“そんなに人気のあるSQLデータベースに良いJSONサポートがあるのに”
あれ、NoSQLやる理由ってJSONサポートだったの?僕はシャーディングや書き込みのスケーラビリティだと思ってたけど。

rco8786 2025-03-12T22:49:04

そうそう、昔の『webスケール』時代ね。スタートアップやSMBの負荷って、PostgresやMySQLが持てるレベルで十分だとみんな思ってる。Twitterも2016年まではMySQLで十分だった。

reducesuffering 2025-03-13T02:27:21

みんなそれを受け入れたの?ベイエリアの企業でシニアソフトウェアエンジニアの面接では、10万人ユーザーを想定したシステムデザインが求められることも多い。

femiagbabiaka 2025-03-13T17:41:34

そうだよ。NoSQLデータベースがなくても、書き込みの負荷が分散できるデータ層を設計する必要がある。

cyberax 2025-03-12T17:43:42

>ビジュアライゼーションツールに使うためにリードレプリカを使うのが良い
いい提案だけど、実際には問題になることも多い。データベースのスキーマが公開APIの一部になるからね。

gizmov21 2025-03-12T00:53:18

アカウント作って意見言わせてもらうけど、会計やサプライチェーンのERPでは、その場でやり直すのがコストかかりすぎる。初日から監査可能であるほうが安くて良いと思う。

Tostino 2025-03-12T01:32:35

NA市場で使われるTrade Promotion Managementのプラットフォームを構築したけど、本当に初めから監査を考えなきゃダメだと思う。後で監査のことを考えるのは地獄だよ。

もっとコメントを表示(1)
bri3d 2025-03-12T01:58:28

監査する側とされる側があるよね。正直、この意見は経験の少ない創業チームには賢い選択だと思うし、tptacekのは経験のあるチーム向けだと思う。監査に金出してスクリーンショットやCSVを見るのは無駄な出費なことが多いけど、悪い習慣が高くつくまで固まるのもミスだよね。

stult 2025-03-12T20:08:51

このアドバイスは業界によって適用が変わると思う。B2BでPIIに関わる商品を扱っているなら、SOC2は絶対必要だし、資金のレベルに応じてSecureframeみたいな自動SOC2準拠チェックサービスを使えば、数千ドルでベストプラクティスを守れるよ。

morsecodist 2025-03-12T03:05:08

コンプライアンスは初めてだけど、SOC2について調べたら、監査の数ヶ月前からたくさんの証拠を集める必要があるみたいで、どうやって遡って準備するのかがわからない。SOC2の認証が簡単というのは他の人から聞いたことがなくて、一般的にはめっちゃ手間がかかるっていう話ばかり。

film42 2025-03-12T03:28:22

VantaやDrataみたいなツールを使うと楽だよ。以前は毎年ツールを変えてたから、毎年イチからやり直してたけど、今は自分のスタートアップでDrataを使っていて、監査人たちも安心するし、こっちも楽だね。

tptacek 2025-03-12T03:47:45

こういうツールを使うのはいいけど、注意が必要。これらと使う監査人が要求しないエンジニアリング変更を強いることもあるし、それがチームにとって最善とは限らないよ。例えば、SOC2を取得するためにPHIスキャンやWAFの設定は必要ないから。

film42 2025-03-12T15:27:09

うちのスタートアップはHIPAA認証が必要だからPHIスキャンはやってるけど、確かに言ってることは合ってるよね。

CaffeineLD50 2025-03-12T04:19:32

パフォーマンス管理のセクションは循環的で曖昧だね。良いものはモチベーションを与え、悪いものはやる気を奪うって。序文はお世辞ばかりで、名前だけで著者の情報を隠してるのもダサい。

xyzzy_plugh 2025-03-12T02:21:24

>「早いうちからやるべきことがあって、それはSOC2を取得するつもりがなくてもやるべきです」と。これがSOC2の精神じゃない?単なるスタートアップの創業者がこういう簡単なベストプラクティスすらやらないのは残念だ。

tptacek 2025-03-12T02:26:38

どうして両方正しいの?SOC2プロセスはギリギリまで待つべきだと思うけど。

rendaw 2025-03-12T02:42:36

GPのポイントは、SSOと保護されたgitブランチがSOC2プロセスを開始することなんだよ。

koolba 2025-03-12T02:47:19

プロダクションの変更理由をトラッキングするためにチケットシステム(例:Jira)を使うのが良いよ。そうすればほとんどの質問に答えられるから。

ozim 2025-03-12T08:08:55

実際、著者が言いたかったことだと思う。ただ、スタートアップの創業者が基礎を整えるのに苦労することが多いね。僕が働いてたところも、ビジネスの人がフリーランスを雇ったけど、フリーランスは高い給料をもらってても、インフラやSDLCのセットアップ、ましてやセキュアなSDLCに関しては無知だった。彼らはコードを書くことだけにしか関心がなかったんだ。ビジネスの人たちは高い技術者を雇ったつもりでいたけど。

tptacek 2025-03-12T18:00:16

SOC2の認証を受けるのにSDLCプロセスは必須ではないよ。

ozim 2025-03-12T20:05:13

もちろん、それはただ全体の話を明確にする一部だっただけ。初期設定を手伝ってくれるコンサルタントにお金を払う必要があるかもしれないけど。最初から完全な認証モードに入る必要はないけど、適切なコンサルタントを見つけるのが難しい場合もあるよ。

erispoe 2025-03-12T14:53:30

痛い思いをしないために、バカなことは避けるのが一番だよ。認証を持つベンダーを使って、インフラを最小限に保ち(インフラチームは不要)、社内でやることが増えると認証が厳しくなる。つまり、買うこと、認証を持ったプロバイダーから買うことがシンプルな解決策だって。アイデンティティは中央で管理して、シークレットはシークレットマネージャーに保管、gitを使ってコードレビューも必須。やるべきことだよね。

kevan 2025-03-12T20:46:41

アイデンティティを中央で管理するっていうのは、OktaやMicrosoft Identityみたいなアイデンティティ管理システムを使用することを指してると思うよ。各自が手動でアカウントを作ったり、誰でも知ってるパスワードの共有アカウントを作るのは避けたいからね。

methods21 2025-03-18T00:09:11

ちょっと意見が違うかな。面接を何回もやってきたけど、採用の時点で候補者が多すぎるのが問題なんだよね。質問例は悪くないけど、非yes/noの質問を入れないと不適格な候補者を除外できない。Javascriptに’非常に慣れている’って言う人が実際のところ’===’が何か知らなかったりするから、”Javascriptの厳密な等価演算子は何?”って聞く。これだけで半分の候補者が落ちちゃうんだよね。

film42 2025-03-12T03:45:25

VPやCTOになったらコーディングをやめる人が多いけど、なんで皆キーボードを置いてしまうのか理解できない。技術的なCTOでいられるんだから、チームや会社に貢献して、積極的に作業するべきだよ。

Aurornis 2025-03-12T13:43:56

VPやCTOの立場になると、コードを書く時間がなくなるよ。コードを書かない人生が続いてしまうと、いざ必要になったときに戻れないから、そうならないように気をつけて。

もっとコメントを表示(2)
film42 2025-03-12T15:39:36

建築者としてのリーダーシップが欲しいのは、コーディングができない苛立ちを解消したいからだと思う。技術的なCTOがいる会社には信頼が持てるよ。

scarface_74 2025-03-12T16:24:42

POCを作ることもあるし、高レベルのアイデアを出して、最高のアーキテクトに実現可能性を調べてもらうこともある。これまで実績のある技術に基づいて実装したいんだ。フロンティアテクノロジーには手を出したくない。

upcoming-sesame 2025-03-12T14:04:44

AIが進化して、コーディングをLLMがしてしまうことで、これまでのキャリアパスが変わると思う。大切なのはアーキテクトのスキルになるかもね。

scarface_74 2025-03-12T14:19:55

なんでコーディングの役割をインタビューしなくちゃいけないんだろう?1996年から2018年まで開発をしてたけど、役職が移行していく中で、今は戦略の方が多くなったよ。

ajmurmann 2025-03-12T04:34:23

時間がないのが全ての原因だった。20から25人のチームをマネージしてたから、コードに費やす時間が全然なかった。でもコーディングの機会を逃したくないから、夜や週末にやってたけど、だんだん腕が鈍ってきたな。

jayd16 2025-03-12T04:37:01

ICではない場合、他の優先事項が出てくるから、重要な仕事を抱えるわけにはいかないよね。レビューやデザインミーティングはできるけど、クリティカルな作業をやると問題になっちゃうんだ。

mikeshi42 2025-03-12T04:22:20

いろいろ考えたけど、VPやCTOが書けるコードは他のチームメンバーも書けるし、その分野では逆に彼らの方がうまかったりするんだよね。だから、競争に勝つためにリクルートや技術的な計画を優先するのは賢い判断だと思う。

guappa 2025-03-12T09:37:03

でも、忘れたらそれできなくない?

petesergeant 2025-03-12T05:42:42

俺の最後のCTOの時は、チーム40人で丸1日オーバーキャパだった。50%プログラミングしてたかったけど、時間もサポートもなかった。結局、ICに戻ることにしたけど、そっちの方が自分に合ってた感じ。

yard2010 2025-03-12T09:49:17

どういう理由でその決断をしたのか、どうなってるのか教えてほしいな。いいことが多いって思うけど。

petesergeant 2025-03-12T10:20:57

その決断ってICに戻ることだよね?それはうまくいってると思う。アメリカの外でリモートで働いているし、ストレスも少なくて悪くない感じ。今はAIプロジェクトに取り組んでいて、税金対策の会社でアメリカの開発者の給料をもらっているよ。

petesergeant 2025-03-13T08:21:42

時間管理にはGetting Things DoneやSeven Habitsが基礎になっている。それをもとに自分に合ったシステムを試行錯誤して見つけた感じ。Inboxをタスクリストに使わないのが信条で、リマインダー設定が簡単なアプリを重視してる。

osigurdson 2025-03-12T13:13:19

多くのスタートアップは50人以上でも正式な管理構造なしでうまくいってると思う。CEOやCTOがまだコーディングや顧客とのコミュニケーション、製品向上に関わってる。初期段階で管理ばかりになるのは間違いだと思う。

dowager_dan99 2025-03-12T16:53:37

OracleやLarry Ellisonのことはあまり好きじゃないけど、彼の「Oracleには2つの仕事がある、ソフトウェアを作るか、売るか」という言葉はいいなと思う。初期のスタートアップでは、ほとんどの人が両方やるべきだよ。

osigurdson 2025-03-12T17:31:08

完全に同意。金に余裕ができるまでは「企業文化」に関わる人を雇うべきじゃない!

scarface_74 2025-03-12T08:53:55

CTOの仕事は戦略だよね。コーディングするマネージャーは要らない。管理とリソースの確保、優先順位付けが大事だし、開発だけがスーパーパワーじゃないんだ。何を開発すべきか、ビジネスとの対応、トレードオフを管理することが差別化ポイントだと思う。

cyberax 2025-03-12T17:44:55

CTOが戦略を担うのは大企業なら分かるけど、スタートアップではちょっと違うんじゃない?

scarface_74 2025-03-12T18:02:59

20〜30人規模の会社でもCTOは顧客との対話が大切だよ。僕の前のスタートアップではCTOが顧客と飛び回ってたけど、CTOの役割とは言えない気がする。実際、僕がAWSで中堅のポジションの時の方が多くの戦略があった。

cyberax 2025-03-12T19:29:13

顧客と話すのはCTOの役割じゃないよ。セールスエンジニアの仕事だ。CTOは技術チームを率いる人だし、スタートアップの場合、かなり細かいところまで関わる必要があるよね。

scarface_74 2025-03-12T20:01:15

CxOは非技術のセールスエンジニアと話したくないし、技術的な問題を理解できる深い技術者と話したいよ。顧客との第一接点は、技術的な人間が担当するべきだと思う。

もっとコメントを表示(3)
cyberax 2025-03-12T21:55:41

CxOは非技術者とは話したくない。だから新しいCxOの役職を作ったりするのがいいんじゃないかな。CTOは内向きで技術計画を策定・実行する役目じゃない?

scarface_74 2025-03-12T22:09:56

僕がセールスに関わるのは仕方ないんだ。でも契約が決まったら、プロジェクトを率いる役割に移るんだ。

cyberax 2025-03-13T00:26:51

セールスで働いてるのが悪いわけじゃないよ。スタートアップではいろんな役割を兼任するのが普通だし、成長した時にそれを続けられるかは分からない。

scarface_74 2025-03-13T01:09:14

同じスタッフレベルのコンサルタントが多いけど、要件分析もプロジェクトリードの一部だよ。実際、プロジェクトは数週間で終わるし、役割分担がうまくできてる。

jkingsbery 2025-03-12T21:25:10

主にMaker’s ScheduleとManager’s Scheduleの問題だね。ランダムな役割を持ちながら、長時間集中して作業するのが難しいんだ。

rhubarbtree 2025-03-12T22:47:27

みんなよりも長時間働くことになるってのをまず理解するのが大事だね。大変だけど不可能ではないよ。

whilenot-dev 2025-03-12T07:33:00

CTOがコードを書いてて、会社がその手直しをしたいエンジニアを雇おうとしてたんだけど、CTOのやり方にみんなが逆らえないから問題だった。バグだらけで顧客は辛抱強かったけど、決定権はCTOにあったから、チームのベストプラクティスが通用しなかったんだ。

dowager_dan99 2025-03-12T16:49:05

自分は初めてのDirectorだけど、いろんな分野に約30人の組織を持ってる。全ての分野に深く踏み込むのは無理で、CTOが言ってる『T字型』って考えに悩んでる。自分は一つの分野でシニアレベルだけど、他はそんなに詳しくないし、他のDirector/VPの中では一番技術的な存在だって感じてるんだ。

gorgoiler 2025-03-12T05:43:29

プロトタイピングの力は、リーダーとして重要なスキルだね。アイデアを形にするのは全体の20%に過ぎないけど、他のICがそれを元に作業を進められるように手助けできるのがいい。自分もリードとして、CTOの役割って同じようなもんだと思う。

nedt 2025-03-12T13:00:04

ジュニアにはメンターがいて、そのメンターと一緒に成長するんだ。最終的には自分も誰かのコードを書くのを任せる側になるってわけ。もし手を動かし続けたいなら、今はその役割に向いてないかもしれないよ。

CaffeineLD50 2025-03-12T04:24:43

Elon Muskは完全に独学でコーディングを学んでるみたいだけど、コードレビューをしてもらいたい?

guappa 2025-03-12T09:38:56

洞窟に閉じ込められた人を助けてる最中に自分をペド呼ばわりされたくはないけど、ちょっと笑えるね。

codingdave 2025-03-12T15:48:27

>”同期チャットはないって言いたい。リアルタイムのやりとりが必要ならチャットではやらない方がいい。電話したり顔を合わせて話すべきで、メッセージ送ってすぐ返事を期待するのはダメだ。”

snide 2025-03-12T01:05:25

『二つのクルー』システムで人々がうまくやってる例を見たことある?分かれるのが普通な気がする。理論上は良さそうだけど、実際に機能するのか疑問だよ。

ajmurmann 2025-03-12T04:42:36

前の仕事では、サポートが終わる予定のオンプレミス製品のバージョンに対して、3人の小さいチームがそのサポートを担当してたんだ。彼らはパイプラインや大きな修正の準備をするだけで、残りの時間は自由に好きなことに取り組んでた。みんなそのチームには感謝していて、彼らがやってくれるおかげで、他の人たちは重要なことに集中できてた。彼らのおかげで素晴らしい改善がいくつかあったと思う。

maccard 2025-03-12T11:39:53

人々が”future crew”に自然に移行したくない場合、実際に成功した場所もあるんだ。ゲーム業界ではエンジンチームとゲームチームのように、異なるチームが効果的に機能することもあった。例えば、6~12週間の間、特定の機能にいて、その後メンテナンスや技術的負債に取り組むスタイルだったよ。

jpswade 2025-03-12T21:41:19

私も昔、Red Teamで新機能開発、Blue Teamで安定性とバグ修正をやるシステムを試したことがある。固定チームじゃなくて、スプリントごとにローテーションしてた。このやり方は3ヶ月間はうまくいったけど、その後はビジネスの能力やドメインに基づいてチームを組織するようになった。

plomme 2025-03-12T12:12:42

はい、週単位でサポートやバグ報告を担当するルーチンがあって、それが完全に別の”二つのクルー”の問題を回避できたかも。詳しくはここで書いたよ。

citrin_ru 2025-03-12T18:52:11

お客様のクルーが十分なリソースを得ている(そして適切に補償されている)なら、”future crew”に移行したくないかも。でも、やっぱり新機能にばかり注目して、メンテナンスがないがしろにされるのは典型的だよね。こうした別々のチームは、状況を悪化させるだけかもしれない。

rukuu001 2025-03-12T05:28:58

こういうのが好きな理由は、役立つ責任や懸念がカバーされているからだよね。すごいアドバイザーがいるか、いい上司の下で働いてない限り、誰もこういうリストを教えてくれないから。各セクションについて、自分たちの答えやプロセスを見直すのが助けになる。

記事一覧へ

海外テックの反応まとめ
著者
海外テックの反応まとめ
暇つぶしがてらに読むだけで海外のテックニュースに詳しくなれるまとめサイトです。