成長するほど、仕事はもっと「面白く」なる。ソニックガーデン流のキャリアステップで拓く、自由で奥深いソフトウェア開発者への道

「いいコードと、生きていく。」これは、生涯にわたって創造性と自由を追求するソニックガーデンのソフトウェア開発者の生き方そのものを表す言葉です。分業を避け、顧客との対話から設計、プログラミングまでを一貫して担い、動くソフトウェアづくりを目指す。本記事では、そんな彼らの特徴と、プログラミングを楽しむ「遊び」の期間から始まるユニークなキャリアステップを解説します。
一般的なエンジニアとソフトウェア開発者の違いは?
ソニックガーデンが考えるソフトウェア開発者は、一般的なエンジニアといくつか違いがあります。
ソフトウェア開発者の目的は動くソフトウェアをつくること
一般的な開発会社では、納品を前提としているため、どのようなソフトウェアをつくるか予め設計する「要件定義」をしてから開発を進めていくことになります。エンジニアにとっては、この要件定義が最初の目的であり、要件定義通りに開発を進めていくことでお客さまに価値を提供していきます。
一方、ソニックガーデンのソフトウェア開発者の目的は、設計書や要件定義の完成ではありません。私たちが目指すのは、紛れもなく「動くソフトウェアを作ること」です。そして、その「動くもの」の源泉はソースコードに他ならず、コードを書く行為こそが開発の核であると、最も強く重視しています。
ソースコードを生み出すのは、自分で書くことはもちろん、昨今ではAIを活用したソースコードの生成にも取り組んでいます。自分で書くか、AIの力を借りるかは手段の違いであり、大事なのは最終目的である「動くソフトウェアを作ること」が達成できるかどうかです。
ソフトウェア開発者は分業を避け、一貫して開発に携わる
多くの開発現場では、効率化のために分業を行います。大きくは、お客さまとコミュニケーションを取りながら要件定義や設計を考えるプロジェクトマネージャーや開発リーダーと、要件定義に沿ってコードを書くエンジニア、プログラマの二つに分かれます。要件定義や設計などを上流工程、プログラミングを下流工程として語られることも多いです。
しかし、ソニックガーデンはこうした工程ごとの分業を避けます。価値のあるソフトウェアを生み出すには、全体を深く理解した一人の人間が、お客さまとのコミュニケーション、全体設計からプログラミングまで、開発の全ての工程を責任を持って携わることで、最大の価値を提供できると考えているからです。実際に、ソニックガーデンのメイン事業である「納品のない受託開発」では、分業は行わず、必ず一人のソフトウェア開発者がコミュニケーションから設計、開発までを統括しています。
(案件規模によっては、統括をするソフトウェア開発者のもとで、チームで開発を行うことはあります)。
ソフトウェア開発者は訓練によって技術力やセルフマネジメントスキルを磨く
エンジニアに限らず、ビジネスで成果を出すために、多くの場合はスクールに通ったり、社内研修を受けたりして「知識」を習得することを重視しています。
こうした知識の習得はとても重要ですが、一方で、ソフトウェア開発者にとって必要な技術力やセルフマネジメントスキル(詳しくは後述)は、座学だけでは身につけることはできません。
参考書を読んだだけでは自転車に乗れないのと同じで、継続的な「訓練」を通じて身体に染み込ませていくものだと考えています。そのために、ソフトウェア開発者はハッカソンや社内プロジェクトでの開発といった実践を通じて、スキルアップを図っていきます。ソフトウェア開発者にとっての成長とは、実践を積めば積むほど上達していく、終わりなき、やりがいに満ちた道なのです。
ソフトウェア開発者は「いいコードと、生きていく。」
エンジニアのキャリアステップとして一般的なのが、管理職としてプロジェクトマネジメントなどを行うようになり、徐々にコードを書くことから離れていく……という流れです。こうしたエンジニアとしてのキャリアの歩みを目指す方も多いでしょう。
しかしながら、これまで解説してきたように、ソニックガーデンのソフトウェア開発者は、動くソフトウェアを作ることが何よりの目的なので、一生コードを書き続けていきます。こうしたスタンスを示すために、ソニックガーデンの企業理念には「いいコードと、生きていく。」という言葉があります。
ソニックガーデンのソフトウェア開発者にとって、コードを書くことは、人生の一部です。だからこそ技術を磨き続け、コードを書くことを楽しめるように様々な工夫を取り入れているのです。
ソフトウェア開発者として活躍するためのキャリアステップ
それでは、ソニックガーデンでソフトウェア開発者はどのように成長していくのでしょうか。それは、明確な上達のステップとして用意されています。ただし、これは単なる役職の階段ではなく、仕事の中身や求められる能力がどう変化していくかを示す「道のり」です。
遊びながら意欲を育てる期間
ソフトウェア開発者の道のすべては、ここから始まります。プロの「型」を学ぶ徒弟制度に入る前に、まず何よりも大切なのは、プログラミングを「面白い!」「楽しい!」と感じ、心の底から「もっとうまくなりたい!」という内発的な意欲を育むことです。
これを私たちは「遊び」の期間と位置づけています。
ピアノのレッスンを思い出してみてください。いきなり厳しい基礎練習から入るより、まずは自由に鍵盤に触れて音を出す楽しさを知る方が、上達への意欲は遥かに高まるはずです。
実際に、過去に新卒で入社した社員は、最初の半年間、コードレビューも細かい指導も一切ない環境で、自由にゲーム開発に没頭しました。自分で作ったゲームを家族に遊んでもらい、喜んでもらう。その純粋な喜びが「もっと面白いものを作りたい」「もっと上手になりたい」という強烈な動機に火をつけ、彼女は自らの意志で本格的な修行の道へと進んでいきました。
この「遊び」の期間は、プログラミングへの適性や情熱を自分自身で見極めるための、何よりも重要なステップなのです。将来的には、高校生や大学生が入社前にこの「遊び」を体験できるような場を創っていく構想もあります。
徒弟制度
「遊び」を通じて「もっと上達したい」という意志が固まると、この徒弟制度の門を叩きます。ここからは、お客様から対価をいただいて価値を提供するプロフェッショナルとしての「型」を学ぶ期間です。
ソニックガーデンでは、親方、弟子という関係性の中で、ソフトウェア開発者として活躍するためのスキルを磨いていきます。親方のもとでは、技術力はもちろん、自律して働くためのセルフマネジメントスキルも同時に磨いていきます。
参考記事:人を育てる仕組みから、組織を育てる仕組みへ〜現代に再発明した徒弟制度3年の学び
ステップ1:親方の手伝いから始める
- ・ 仕事内容: 最初は、親方(メンター)の仕事の一部を手伝うことからスタートします。ほんの一部分のコードを書いたり、テストを手伝ったり、動作確認をしたり。まだ一人でお客様に価値を提供できる段階ではなく、会社にとっては育成のための「コスト」をかけている時期です。
- ・ 身につくこと: この段階で徹底的に叩き込まれるのが、プロとして働くための土台となるセルフマネジメントスキルの第一段階です。報告・連絡・相談(ほうれんそう)や進捗管理といった、当たり前だけれど最も重要な基礎を、親方の側で学んでいきます。
参考記事:セルフマネジメントで自由に働くまでの5段階ロードマップ 〜 自己管理だけではない
ステップ2:案件に参画し、自律的に働く
-
・ 仕事内容: セルフマネジメントの基礎が固まると、いよいよ親方が担当するお客様の案件に開発メンバーとして参加します。最初は親方が設計したタスクを実装することから始めますが、次第に自らタスクを分割(=設計)できるよう訓練を重ねます。毎月開催される社内ハッカソンでゼロからものを作る経験も積みながら、複数の案件に関わることで経験の「量」を増やしていきます。
やがて、正式にお客様から費用をいただくプロジェクトの一員として売上に貢献することを目指します。お客様と直接対話し、機能のヒアリングから実装、運用までを一貫して任される機会も増えていきます。 - ・ 身につくこと: この段階では、実践的な開発スキルはもちろんのこと、タスクばらしやザッソウ、ふりかえりなどを行いながら自律的に働けるようになるスキルを身につけていきます。
ステップ2.5:親方以外の案件への参加
経験を積んでいくと、親方以外のベテランソフトウェア開発者の案件に参画することもあります。仕事内容はステップ2と変わりませんが、親方のもとを離れることで、より自律的に、仕事で成果を出すことが求められます。
ステップ3: 開発責任者としてソフトウェア開発を統括
- ・仕事内容: 案件への参画で経験を積んだ先には、ソフトウェア開発全体を統括する「開発責任者」への道が拓けます。最初は小規模な案件からですが、徐々にお客様の事業戦略そのものに深く関わり、開発のロードマップを描き、時には組織課題にまで踏み込んで助言する、まさにビジネスパートナーとしての役割を担います。 さらに、上場企業のシステム全体を統括するような、より大規模で複雑なプロジェクトを率いることもあります。 そして、後進を育てる「親方」としての役割も担うようになります。
-
・身につくこと:お客さまとのコミュニケーションスキル、課題抽出力や提案力、より高いコーディングスキル、最新技術を習得し続ける柔軟性、若手ソフトウェア開発者のマネジメントスキル、チームマネジメントスキル……など多角的で総合的な力が求められていきます。
そして、何よりも大切なのは、どれだけ責任が重く、関わる領域が広がっても、開発責任者自身がソースコードを書き続けること。これこそが、ソニックガーデンのソフトウェア開発者の道の神髄です。現場のコードから離れてしまっては、最高のソフトウェアは作れないと知っているからです。
焦らず、じっくり。遊ぶ感覚も大切にしながらソフトウェア開発者の道をやり込もう
ソニックガーデンのキャリアステップは、決して簡単な道のりではありません。しかし、簡単ではないからこそ、そこにはどこまでも探求できる「奥行き」があり、一生をかけて打ち込める「やり込みがい」があります。
一つひとつの段階を着実に踏みしめていくことで、ソフトウェア開発者としての確かな実力が身につき、その実力があなたを「自由」にします。責任が増えるほど仕事がつまらなくなる、なんてことはソニックガーデンではありません。むしろ逆です。できるようになることが増えるほど、仕事はもっと「面白く」なり、より「自由に働ける」ようになるのです。
だから、焦る必要はまったくありません。10〜20代でソフトウェア開発の楽しみを知り、自律的に働くスキルを身につけ、30代で案件参画で成果を出せるようになり、40代で開発責任者として活躍する。それくらいの長い時間軸で、じっくりと自分の成長と向き合えばいいのです。
そして忘れないでほしいのは、この道のりは苦しい修行の果てに楽園が待っている、という物語ではないということ。最初の「遊び」の精神は、どの段階においても失うことはありません。親方の手伝いをするときも、案件で成果を出そうと頑張るときも、ベテランの開発責任者としてプロジェクトに臨むときも、誰もが遊ぶ感覚を忘れずに働くことを理想としています。
そのための一つの取り組みとして、ソニックガーデンでは技術力を磨き、コードを楽しむための時間として毎月社内ハッカソンを開催しています。このハッカソンには新人プログラマもベテランプログラマも参加し、フラットな環境の中で楽しみながらソフトウェア開発を行います。
参考記事:遊びから始まるプログラミング 〜 ハッカソンが育む文化と成長
このように、ソニックガーデンには、ソフトウェア開発者の道を極め、生涯にわたって創造性と自由を追求し続けたいという人ばかりが集まっています。
そして、そんなソフトウェア開発者たちが築き上げてきたのが、今回紹介したキャリアステップです。やりがいに溢れ、一生打ち込めるほどの魅力に満ちたソニックガーデンの「ソフトウェア開発者の道」に興味を持った人は、ぜひご応募ください。