2023年1月16日(月)〜 2月10日(金)にかけて、「第3回ソニックガーデンキャンプ」が開催されました。大学生が5名、既卒(社会人経験あり)が6名、合計11名が参加しました。
今回は参加者の中から4名にインタビューを実施。さまざまな職からエンジニアへ転身したというバラエティに富んだ4名が、キャンプの経験を賑やかに振り返ってくださいました!
まず、ソニックガーデンキャンプに参加したきっかけを教えてください。
kuma Qiitaに、学習目的で記事を投稿していたんですが、そこに掲載されていた広告を見つけたのがきっかけです。当時は独学でRuby on Railsを勉強していて、1人で勉強することに限界を感じてたのと、現場のエンジニアさんと直接話してみたいなという希望もあって、参加を決めました。
kamin 私は、通っていたプログラミングスクールを卒業して、転職活動をしていた時期でした。なかなかしっくりくる場所が見つからないなと思っていたところで、知り合いがソニックガーデンキャンプのことを教えてくれたんですね。チーム開発の経験は、転職にあたって良いアピールポイントになりそうかなと思って、参加しました。
fuku 僕も知り合いづてにキャンプの存在を知りました。第2回に参加してた方なんですけど、その方が、僕が独学でプログラミング勉強しながら転職活動をしているのを知っていて、勧めてくれたんです。参加して良かったって言ってて、それはいいなと思って。
makky 僕はSIerでエンジニアとして働いていたんですが、いろいろ思うところあって退職したんです。それで、SIerの誰も幸せになれない構造に疑問を抱いて、どうしていくべきなのかみたいなことを調べたりしていたときに、たまたま倉貫さん(株式会社ソニックガーデン代表)のブログに行き当たりました。その中でソニックガーデンキャンプについて言及されていて存在を知ったんです。ちょうど次回のキャンプが前職の退職日の直後で、これは参加しようと思って。
kuma 僕はキャンプが初めてのチーム開発でした。
Gitの使い方とか、開発時のコミュニケーションなんかを体系的に学ぶことができたなと思っています。
率直な感想としては、難しかったですね(笑)。期限まで仕上げればいいというわけではなくて、途中でレビュー会があったりするので、やっぱりある程度計画的に進めていかないといけない。それを初めて集ったメンバーで円滑にコミュニケーションを取りながら開発をしていくっていうのは結構大変でした。
kamin 今まで1人で学習していたので、スピードはあんまり気にせず、調べながらやっていたんですよね。だからいざチーム開発となると、どんなタスクが必要で、かつ、そのタスクを、誰がどのタイミングで、いつまでにやるのかっていうのが挙げ切れなかったので、非常に難しく感じました。
fuku 僕もチームの開発経験はなく、しかも自分で何かを作ってみようという積極的な意欲みたいなものも、ほぼない状態で参加しました。だから、みんなと同じなんですけど、やっぱり「めっちゃ難しかった!」が最初に出てきますね。コード書くのもそうですし、何を作りたいかとか、どういう風にしていきたいかっていうのを、メンバー同士で認識を合わせるというのがとても難しかったと思ってます。僕と他のメンバーの認識が違うところをすり合わせていくのとか…。
makky 4人チームだったんですけど、業務経験があるのが僕だけだったんです。それで最初は「わ、ちゃんとやらなきゃ」って思い過ぎちゃってちょっと不安だったんですけど、後半になるに従ってコミュニケーションがうまくできるようになった感じですね。
結果的にはチーム内でふりかえりをしながらブラッシュアップさせていけたので、最初の印象よりうまくいったなと思っています。
4週間のキャンプを過ごしてみて、収穫はありましたか?
makky チーム開発の時、何を作ろうかというところで議論になりました。それぞれ主張があってかなり話し合いを重ねることになったんですけど、その時に、お互いどこまでが妥協できるのか、譲れない部分はどこかというのをちゃんと出し合ったんです。そこをちゃんとやったことが、後の開発やコミュニケーションにも影響したので、チームでの開発は、まず全員が納得感を持ってやらなきゃいけないんだなっていうのがよく分かりました。
お仕事での開発だと、あんまり意見ぶつけ合うみたいにはなりづらいですもんね。
makky そうですね。前職だとまだ新卒だったので、まずは言われたことをきちんとやることで精一杯だし、それが求められることだったので、開発のためのディスカッションという経験はまだできてなかったんですよね。
fuku 僕は技術的な基本を習得できたのが良かったと思っています。Gitの使い方とか、チーム開発でのいろんなツールの使い方とか、そういうところを実践ですごく学べたなと思っています。
一番の収穫は、コミュニケーション面ですね。僕はあんまり自分から会話を持ちかけたりはしない人間なんですけど、積極的にコミュニケーションを図らないと、いつの間にか認識がずれていったりして、結果的にチーム開発がうまく回らなくなったりするんです。だから、なるべく意識的に、気持ちや状況をアウトプットするのがすごく必要だと感じました。ちょっとずつですけど、それができるようになったので、そこは自分的にも成長したなと思っています。
何でも実践すると、何をどう使えばいい、こうするとできる、伝わる、みたいなことが短時間で自分の中に入ってきますよね。
fuku そうなんです。ただ、チーム開発に使えた時間は2週間で、割とぎゅっと凝縮されていたので、自分の中で消化し切れなくて勿体なかった部分もあります。
kamin 1人でプログラミングを学習していて、開発する上で必要なことっていうのは、教科書的には知っていたんです。それが今回、初めてチーム開発というものを実践して、「なるほど、今、ここでこれが必要なんだ、そしてできていないんだ」というのを肌で感じることができたのは大きかったです。
あと、世間的にエンジニアって、あんまりコミュニケーションが必要じゃないっていうイメージだと思っていたのですが、実際にチーム開発をやってみて、めちゃめちゃコミュニケーションが重要だっていうこともよくわかりましたね。
kuma 現場で働いている方からコードレビューを受ける機会がすごく成長につながったなと思っています。エンジニアに対する漠然としたイメージはあったんですけど、実際に関わったことはほぼなかったので、現場で働いている方と直接コミュニケーションが取れて、どういう方々なのか、仕事の雰囲気なんかも知ることができたのは、大きな収穫でした。
キャンプではコードレビューを受けるのも大きなイベントだったと思うんですが、どうでしたか?コードレビュー自体が初めての方も多かったですよね。
makky 僕は仕事でもコードレビューを受ける機会があったんですが、キャンプのコードレビューは、ちゃんとコードに根拠を持っているんだなと感じました。
なんでこう書くのか、なんでこういう名前を付けるのか、全部きちんと説明してもらってレビューしてもらえるので、納得感があるし、何よりコードに対するこだわりを感じました。誰がみても意味が理解できるかという視点で指摘してもらえたのも良かった。すごく丁寧に見てくれているんだっていうのが新鮮でした。
kamin こういうところまで見るんだなっていうのが最初の感想です。まっきーさんも言ってた、名前の根拠とか、コードを綺麗に読みやすくすることが大切であるとか、その重要性がよくわかりましたね。
ソニックガーデンの文化とも言える「ふりかえり」をキャンプでも実践したかと思います。この経験はいかがでしたか?
kamin 前職では、業務で特にふりかえりってやってこなかったんです。キャンプではふりかえりをやるとなって、それ自体は必要だろうと思ったんですが、毎日やる必要はあるのかな、という気持ちで始めました。
でも実際毎日やっていると、自分が今日できたことと、できなかったことを整理できるので、単純に良いものだなと。でも実はさらにその先が大事で、できなかったことがなぜできなかったのか、その原因を追求する、そうすると同じミスは生まれにくくなりますよね。そこまで考えることができることが、すごく大事なことなんだなと思いました。
kuma 前職は営業をやってまして、日報を書いてました。報告の側面が強いものですね。今日は何時から何時まで何をやってましたよっていうのを、上司に見せて安心させるものっていう認識でした(笑)。
でもソニックガーデンのふりかえりっていうのは、それとは全然違うもので、課題解決のために何を考えたかっていうのをドキュメントに残しておくということです。自分の行動をわかりやすく言語化するということに、最初は難しさを感じたりしたんですけど、すごく新鮮な経験でしたし、続けることで自分の成長が記録としても実感できるので、すごく良いものだなと思いました。
fuku 僕は前職が福祉関係で、くまさんと同じく日報をつける習慣がありました。それもふりかえりとは似てるようでまったく違う文化で、その時にあったことの報告に終始している感じですね。起こった問題を再び起こさないためにどうすればいいかとか、どうするともっと良いかっていう観点はなくて、その場限りの対応がずっと続いてしまうっていう。
だから、ふりかえりをしてみて、実際にあったことを踏まえて、次はどうするのかを具体的に考えてしっかり指針を示しておくことで、同じことを繰り返すことはなくなるんだってことがわかりました。自分の意識を変えることができたなと思って、これはすごくよかったと思っています。ただ、めっちゃしんどいですね、ふりかえりって。
fuku
makky 僕もやっぱり前職で日報がありましたけど、そこから日々の業務を改善するような文化はなかったんですね。キャンプでふりかえりを毎日するんだよって言われて、最初は、そんなに改善することって出てくる? とか思ってたんですけど、いざやってみると、チームに4人も人間がいたら、絶対毎日いいこと悪いことは出てくるんだなと実感しました。その中で、次にやることを考えると、できるだけ行動に落とし込むようなトライを出した方がいいよっていうことを言われました。
改善策を共有できるドキュメントに残しておくとか、具体的な行動に落とし込むことで、初めて改善ってできていくんだなという学びになりましたね。
チーム開発時のコミュニケーションについて教えてください。結構苦労された面とかありましたか?
fuku 率直に、コミュニケーションって難しいなって思いました。伝えたいこともなかなか伝わらなかったし、相手が伝えたいことが、いまいち自分に伝わってないなっていうのもすごくありました。
先ほどまっきーさんが、お互いがやりたいことを主張しあって議論になったって話をされてたと思うんですけど、僕も同じチームだったので、その場面にいたんですね。お互いに伝わってない、噛み合ってないのがわかって、難儀しました。それがすごく印象に残ってます。
fuku お互いの話し方に慣れてきたっていうのもあるし、お互いに自分の意見全てを通すのは無理なんだなっていうことがわかってきたので、どこで折り合いをつけるのかをすり合わせるようなコミュニケーションに徐々に変えていって、最終的に落ち着いた感じでした。
makky 何のアプリケーションを作るかで議論になったんですけど、2週間で何がどれぐらいできるのか、できるだけ意見出し合って、調査をして、その結果をもってできることとできないことを確認して、現実的な線を見つけるという感じで、最終的にみんなが納得できた、と思っています。
kamin 私は、今ここにいる3人とは違うチームだったんですけど、まっきーさんたちのチームと真逆でした。主張ある人があまりいなくて、アイデアを出してもそれほど活発な議論にはならないという(笑)。
だからこそコミュニケーションって重要なんだなと、改めて気付かされました。結局、アプローチの方法を根本的に変えて、「どう?」っていうような漠然とした聞き方はやめて、「yes」「no」で簡潔に答えられるような質問を振ったりして。
相手のタイプによって、コミュニケーションの方法を変えないとうまくいかないということですね。
kamin そうですね。勉強になりました。同時に、他のチームに活発に出入りして情報収集して、それも生かして乗り切った感じです。
kuma 僕のチームだと、1人すごいできる方がいらっしゃって、その方が技術的なところは調査してくれるし、作業の進捗も管理してくれて、至れり尽くせりの状態でした。
技術力に差がある中で自分のアイデアを伝えて、納得してもらうために開発したい理由をみんなで詰めたりして、そんな感じで、一応みんなで動かす感じでやれたんじゃないかと思ってます。
かなりチームごとにカラーが違ったんですね。チーム開発には相当な密度のコミュニケーションが必要で、しかも相手によって方法も違う。そんなことも学べてしまったと。
では最後に、これからソニックガーデンキャンプに参加する人や、参加を迷っている人に向けてメッセージをお願いします。
fuku 僕はキャンプに参加する前、すごく不安だったんです。主催のソニックガーデンを調べてみたら、すごいレベルの高そうな会社だし、自分でちゃんとプログラムを組んだ経験もないし、ついていけるのかなって思ってしまって…。でももうダメ元で行こう!と思って踏み出したんですけど、結果的にはちゃんと4週間完走できました。
なんでかというと、質問にはしっかりアドバイスをしてくれるし、メンバー間でもじっくり話し合う機会があって、サポート体制が充実してたんですね。全然怖くなかった(笑)。なので、自信のない人や不安を感じてる人でも、時間さえ確保できるのであればぜひトライして欲しいです。
makky 知らない人と突然一緒に開発したり、コミュニケーションがんがん取ったりしなきゃいけないのって怖いし、技術マウント取られたらどうしようとか考えちゃったりすると思うんですけど、別にそんなことはありません(笑)。
毎日のふりかえりで、チームで上手く学習・開発を進めるのかをみんなで考えられるので、ちゃんと納得感を得られつつキャンプを終えられるんじゃないかと思います。ぜひ頑張って欲しいです。
kamin 冒頭でスクールに通ってたってお話ししたと思うんですけど、私はカリキュラムに集中していて他のスクール生との関わりはあまり多くなかったんです。オンラインでしたし。だからプログラミングを勉強する上で、他者とのコミュニケーションって特に必須ではないかなと思っていたんですけど、
キャンプに参加してみて、他の人の考え方や、どう学習しているのかを知ることって、意外と重要だなということに気づくことができました。
なので、私と同じように、とりあえず勉強は頑張ってみたけど、次にどう進んだらいいのかわからないとか、1度他の世界をのぞいてみたい人には、キャンプはいい機会だと思います。
kuma 僕は独学でプログラミングを勉強していて、周りに一緒にプログラミングする人もいなかったし、同じように勉強している人と出会う機会もあまりなかったんです。
なので、キャンプのように、現場のエンジニアの方とお話ししたり、学習されている方と一緒に何かに取り組む機会は、すごく貴重だなと感じました。仲間を見つけるという意味でもすごく良い経験です。ぜひ参加していただけたらなと思います。
(文 / インタビュアー・土佐 光見)
2023冬開催の第5回キャンプ事前案内申し込み受付中!
2023冬に第5回キャンプの開催を予定しています!参加を希望される方はこちらからお申込み下さい。
キャンプの募集開始時に、優先的にご案内をお送りいたします