1
/
5

なんでもまずはやってみる!出身地・新潟で働く敏腕プログラマの素顔に迫る

(小嶋)社員の小嶋 俊幸さんにお話を伺います。はじめに自己紹介をお願いいたします。

(小嶋)こんにちは、小嶋 俊幸(こじま としゆき)といいます。ソニックガーデンでは、「トシ」と呼ばれています。奥さん、子供、両親、祖母と、新潟県の村上というところに住んでいます。大学や前職では東京に一度でていきましたが、現在は新潟に帰ってきてソニックガーデンで働いています。


社員が書くブログの読者という立場から、ソニックガーデンに興味を持ち、トライアウトへ

ソニックガーデンに興味を持ったきっかけは、ソニックガーデンの社員、伊藤さんの運営するブログの読者だったからだそうですね。そもそも伊藤さんのブログを知ったきっかけはなんだったのでしょうか?

(小嶋)前職で、会社の業務を効率化するためのシステムを作ってました。僕1人でプログラムを書いていたので、ネットで情報を探してプログラミングをしていたんですよ。


お1人だったんですね、それは大変。

そう。書いてみて、正しい動作をしたとしても、自分が書いたコードの良し悪しがわからない。けど、いいコードが書きたいとは思っていたんです。


ちゃんと動けばいいや、とはならなかったんですね。

(小嶋)そうですね。そこで良いコードの書き方を調べていくうちに、伊藤さんの記事をよく見かけて、暇な時に伊藤さんのブログを見るようになりました。


としさんの興味と、伊藤さんの記事がマッチしていたんですね。すごい。

(小嶋)あるとき、伊藤さんがソニックガーデンにジョインしたブログ記事を見かけて、1人でプログラミングをやってるのがすごく寂しくなりました。プログラミングの話をする仲間が欲しいと感じたんです。「伊藤さんのいる会社、なんかすごいプログラマがいっぱいいるらしいぞ」と思ってソニックガーデンを調べました。


私は入社してから本当にすごいプログラマがいっぱいだったんだな、と気付きました(笑)

(小嶋)そう、その時ソニックガーデンのトライアウト*の申し込みを見かけて、とりあえずGitHubのアカウントがあれば始められるらしく、気軽に感じたんですよね。それで勢いに任せてトライアウトを始めたんです。

(*トライアウトは、ソニックガーデンの採用の仕組です。オンラインでのトレーニングとテストを受けることができ、プログラミングに関する技術力と、仕事や仲間に対する姿勢や考え方の確認のためにあります。)


勢い!そうだったんですね。

(小嶋)他の会社だと履歴書を送らないといけなかったりしますが、ソニックガーデンの採用プロセスではそうではなくて、トライアウトを進めながら徐々に準備していけばよかったんですね。始めるために何も用意しなくていいっていうのは、敷居が低く感じました。


勉強を進めながら、ソニックガーデンへの理解を深めながら、途中で辞めてもいい。いきなり履歴書を用意したり、真剣な転職活動しなきゃいけないっていうわけでもないから、始めるハードルが低いのかなっていう感じはしますね。

お客様の1番の目的に向き合える、納品のない受託開発への思いとは

ソニックガーデンでは「納品のない受託開発」という形でシステム開発をしていますが、実際にやってみてどうでしたか。

(小嶋)納品がないというのは入るときに共感したポイントの一つでした。というのも、前職の会社で関わっていたプロジェクトでは、納品があることで歯痒い思いをすることが少なくありませんでした。


そうだったんですね。どんなことがあったのでしょうか?

(小嶋)1回納品したからもう直せないよとか、これ以上はお金がかかるよとかそういうやりとりをお客さんの立場で経験して、何とかならないかなと思いました。そこでソニックガーデンの倉貫さんが、「いや、悪いのは納品だよ」とおっしゃっているのを知ったんです。


そもそものところを指摘してくれたんですね。

(小嶋)はい。多くのシステム会社はやっぱり納品ありきで動いているので、今している仕事は、「納品がなくてもうまくいくんだよ」っていうのを世の中に知らしめる活動の一つなのかなと思ってます。


確かに、納品がある形態が今のスタンダードだから、納品がなくてもうまくいく、むしろ無い方がうまくいく、というイメージを持ってる人の方が少ないのだろうな、と感じます。

(小嶋)極端なこと言ってしまうと、別の会社がそういうことをやり始めてもいいっていうか、むしろ真似するところが多くなってくる方が、世の中が良くなっていくんじゃないかなと思ってます。


普通だったらビジネスモデルを真似されるのは不利だと考えるかもしれないですが、ソニックガーデンの場合は「納品のない受託開発」が広がれば広がるほど、業界を変えていける可能性があるんですね。続いての質問ですが、入社前に思い描いていた納品のない受託開発のやり方と、自分が今やっているやり方にギャップはなかったですか。

(小嶋)思ってたの違うなみたいなところはないですね。多分「納品がある」ってある意味楽でもあるんですよね、システム会社としては。納品さえしてしまえばそれで終わりですよって言ってしまえるし、言ってないことはやらないよで済むのでいいんですけども、本当にお客さんのこと考えるとすごくつらいと感じます。


確かに、お客さんとしては後から機能を追加したりしてもらうのにコストがかかるし、使いづらいと思いながら使っている人は多いですよね。

(小嶋)「お客さんの価値になること」にフォーカスしておけば、あとはそこまで大事じゃなくて、その目的一つに注力できるのですごく気分が楽になりました。一般的な受託開発だと、役に立たなかったシステムも納品してしまえばそれで終わりっていうこともあるんでしょうけど、ソニックガーデンでは価値を生むことにフォーカスしているから、意義のある仕事ができていると思いますね。システムを作ってみたものの結局使えなかったみたいなことは起き辛い仕組みだと思っています。

端から見たら些細なことでも、つい研究したくなる


続いての質問はあまり重要じゃないかもしれないのですが(笑)社内の掲示板で何度かグミを作ってみた!という投稿を見かけて、ずっと気になっていました。どうしてグミを作り始めたんですか?

(小嶋)そもそも一番最初に作ったのは多分5年ぐらい前なんですけど、僕グミが結構好きなんですよ。だけどある時グミって高いなと思って、安く大量に食べたいと思ったんですよね。それで、自作すると安く済むんじゃないかと考えました。僕実はすごい貧乏性で、めちゃくちゃケチなんですよ(笑)


確かに自分で作った方が大抵のものは安く済ませられそうですが、グミを自作する発想はなかったです(笑)

(小嶋)周りのみんなが経費でいい椅子を買っていても、自分は安い椅子を買ってしまう。いくつか選択肢があると、ついつい安いものを取ってしまう。両親がお金を節約する傾向があったので、そういうのが染み付いちゃっていて、日常的にグミを買うのに抵抗があるんです。


つい安い方を選んじゃう、という気持ちはめちゃわかります。

(小嶋)そこで大量にゼラチンを1キロとか買って作り始めたんですけど、結局早々に無理だって思ったんですよ。というのもグミって、ネットで見るようなレシピでやろうとすると中々うまくいかないです。それなりにはできるけど、既製品レベルにはならない。


1キロもですか(笑)それはすごいなあ。確かにグミは作るの難しそう。


自作したグミ。理想通りの弾力や歯触りを実現するのはかなり難しい。


グミについてもそうですが、結構研究したくなるタイプなんですか?

(小嶋)そうですね、研究したくなるというのはあるかもしれないですね。例えば、ゲームの攻略サイトで、ユーザー自身が編集できるものがあったんですけど、情報が何もないから編集してみようと思って。


あー、ゲームする時つい見ちゃいますよね。

(小嶋)それで、ゲームとしてやっててもわからない情報とかあるじゃないですか。例えばドラクエで、メラっていう呪文のダメージがどうやって算出されてるかってわからないでしょう。なのでその計算式を解析するとか、そういうのが楽しいんです。ただ、突然飽きる(笑)


面白いところに目をつけますね!飽きるきっかけみたいなのはあるんですか?

ふと「これ意味あるのかな」と思っちゃう(笑)やってる時は楽しいのだけど。


我に返っちゃうんですね(笑)面白いからこれからも何か研究してほしいですけど、違うお菓子とかゼリーとか興味ないんですか?

(小嶋)ゼリーは簡単なんですよ実は!研究しがいがないんです。

「ものづくり」と「パズル性」を兼ね備えたプログラミングの魅力

としさんは基本的に、いろいろなことを深く追求したいタイプなのかな、とお見受けしました。次は根本的な質問だと思うんですけど、プログラミングのどんなところが面白いと感じますか?

(小嶋)うーん、難しい質問ですね。例えば小さい子供にブロックを与えると遊ぶように、やっぱりやってると楽しいところでしょうか。単純に物を作るのは面白いと感じます。


すごく根源的な楽しみに近いのでしょうか。

(小嶋)プログラミングってもの作りの側面もあるし、パズル的なところもあると思います。だから本当にブロックみたいできっと楽しいんですね。


なるほど、ブロックで遊ぶような感覚なのですね。それは羨ましいです!ところで、プログラミングはいつから始めたんですか?

(小嶋)初めて触れたのは大学の授業でした。僕もともと電子制御工学科っていうところで勉強していたのですが、機械をプログラミングで制御するんです。だけどなんでその学科に入ったんだ、と言われるぐらい電気がわからなくて、電気磁気学とかはボロボロだったんです(笑)


電気系に行ったのに、電気は苦手だったんですね(笑)

(小嶋)そうなんですけど、プログラミングと論理代数という科目があって、僕はそのふたつはトップ取れるくらい得意だったんです。だから電気系統は全部捨ててプログラミングだけして、新卒ではシステムの会社に入ったというような感じでしたね。

「動くだけじゃない、良いコード」にする大切さ

自分の適性というか、得意なものがわかって良かったですね。

(小嶋)はい。当時はプログラミングにそんなこだわりもなく、ただ全然苦じゃないので、これでお金がもらえるならいいなぐらいに考えていました。


確かにとしさんにとって、プログラミングは遊びみたいな感覚とおっしゃってたので、それでお金がもらえるなら最高ですよね。

(小嶋)そうなんですけど、ある時先輩がリファクタリングの本を持ってて、そこで初めてリファクタリングというものを知ったんです。


一度書いたコードを、短くしたり読みやすくしたりすることですね。

(小嶋)そう。1回作ったコードを綺麗に読めるように直すというのが、すごいカルチャーショックでした。こういうことにこだわるべきなんだなっていうのを初めて知ったんです。それまでは本当に授業でやったとかそんなレベルだったんですけど、そこでプログラミングって奥が深いんだなっていうのがわかりました。


自然豊かな新潟の村上で働いています。家から海が近いので、働く合間に泳ぎに行ったりすることもできます。

いろいろな技術を学ぼうとするモチベーションとは?

そんなとしさんは入社されてからkintoneやRails、firebaseと、いろいろな技術に取り組んでますね。ソニックガーデンの中では珍しいタイプだと感じていて、どうしてかお聞きしたいです。

(小嶋)端的に言ってしまうと、いろいろやって比較しないと、それがいいのか悪いのかってわからないなと。プログラミング言語については特にそう思ってるんですよ。


言語によって良し悪しがあるものなのですか?

(小嶋)そうですね。例えばRubyを勉強した後に、Pythonを勉強すると、同じことができても書き方の違いがあって、こっちの言語はこれについてはめっちゃ楽だな、こっちは手間だな、みたいな言語の得意不得意が見えてくるんです。


普段は和室で仕事しています。


なるほど、目的に応じて違ったりするんですね。

(小嶋)そうですね、なので言語レベルではそういう話なんですけれども、ただアーキテクチャ的な話だと多分ちょっと違っていて。そもそも僕、あんまりやりたいことがないんです(笑)


そうなんですか!?いろいろなことに興味がありそうな印象を受けました。

(小嶋)興味がないっていうか、どっちかっていうと好き嫌いとかじゃなくて仕事なんだからやらなきゃという考え方なんです。だから、面倒で地味な作業だとしても、仕事だからと割り切ってできてました。


なるほどなるほど。

(小嶋)僕は手が空いた時に、仕事を自分から取りに行くのが結構苦手で、できれば仕事を振ってもらいたいんです。


確かに、自分から仕事をくださいと言いにいくのって勇気が要りますよね。

(小嶋)そういうときに、何でもやりますよと言ってると結構仕事を振ってくれやすいんですよね。例えば入社してから、タイムカードアプリを作るプロジェクトがあって、それをやり始めたんです。僕もちろん勤怠のこととか全く知らなくて、興味もなかったんですけど、やってるうちにわかってきて、それなりに面白い。そしたらお客さんの案件でタイムカードを作るものがあったときに、メンバーに誘ってもらったんです。多分もともとやってなかったら、そういう案件とか来なかったと思うんですよ。


最初に自分のキャパシティを広げておいて、仕事を頼んでもらえる立場でいるというのが、としさんのやり方なんですね。

(小嶋)そうそう。まず「やりたい」「やりたくない」ではなく、とりあえずやってみる。そうすると、そのうちちょっとずつ面白くなってきて、徐々に、「そういうのができる人」という認識が周りに広がるんですね。その結果、それに関わる仕事が来るようになると思うんです。


そういう新しい技術的なところ、何か新しい勉強をするのもそれなりに大変だと思うんですけど、工夫とかあったりしますか?

(小嶋)僕はプライベートでもプログラミングしてるんですけども、何か新しいものを作ろうってなったときに、どちらかというと新しい技術をやりたいがために何か作るわけじゃなくて、作りたいものが先にあるんです。そのときに、せっかくだからと使ったことないものを試してみていますね。プライベートなので失敗を気にせずチャレンジできるんです。


プライベートで何か作るついでに、新しい技術を試してみるんですね。

(小嶋)そうですね。あと、ソニックガーデンでは毎月ハッカソン*が開催されているじゃないですか。僕はそこがすごくいい場だと思っていて、何か新しいことにチャレンジするにはぴったりだと思います。プレッシャーがすごいので、無理やりでも進むっていうのがいいですね。

(*ハッカソンとは、広い意味でソフトウェアのエンジニアリングを指す“ハック”(hack)とマラソン(marathon)を組み合わせた造語で、ソニックガーデン社内で毎月決まったテーマの開発を行うイベントとして開催されています。)


作ったものをデモする時間があるので、何か成果物を作らないと、というモチベーションになりますよね。

Web開発の本質にフォーカスできる、firebaseの魅力

今はfirebaseに力を入れていらっしゃるそうですが、どういう魅力があるんでしょうか?
(*firebaseとは、Googleが提供している高品質のモバイルアプリやWebアプリケーションを開発することができるプラットフォームです。モバイルおよびWebアプリケーションのバックエンド(データの処理や保存など)を簡単に行うことができます。)

(小嶋)firebaseに触れたのは、トライアウトの終盤にfirebaseのプロジェクトを一緒にやってみないかと言われたのが最初です。端的に言えば、ウェブサイトを作るのが簡単なんですよ。それまでにもWebサイトは一応作ったことがあったのですが、最初にデータベースの設計をしたり、初期設定したりするのが結構面倒なんですよね。


私もプログラミングを勉強している中でやったことがありますが、正直こんなに大変なのか!と思いました。

(小嶋)そうですよね。けどfirebaseは、そういうの全部すっ飛ばして、JavaScriptでフロントのHTMLに関わるところさえ書いてしまえば、あとはもう全部firebase側がいい感じにしてくれます。


それは便利ですね!

(小嶋)楽だっていうところが魅力と言ってしまうとそれまでなんですけれども、もうちょっといい言い方をすると、やりたいのはウェブアプリを作るところですよね。


そうですね。詳細な設定などは、私はできればやりたくないと思ってしまいます。

(小嶋)うんうん。サーバーの裏側を用意するのって、本質的にやりたいところじゃないと思うんですね。なので本当にアプリケーションとして価値があるところに注力できるっていうのがやっぱり一番いい所なのかなというふうに思います。


一番工数をかけたいところに注力できれば、より良いものが出来上がりますよね。

チーム開発で、どんどん良いコードを議論していきたい

今後、挑戦していきたいことは何かありますか?

(小嶋)チーム開発に挑戦したいです。ソニックガーデンに入社した一番最初の動機が、プログラミングの話ができる仲間が欲しいからっていうのがあるんですけど、やっぱりそういう話が楽しいんですよ。今2人体制でやっている仕事があって、「こういうふうにした方がよくない?」みたいな話をするのがすごく楽しいんです。


なるほど。ソニックガーデンでそういう話をできる仲間をたくさん見つけられたんですね!

(小嶋)はい。チーム開発になるとそういう機会もとても増えて嬉しいです。「動けばいいじゃん」から一歩踏み込んで、どういうコードを書くべきか、ソニックガーデンとしてどういう成果物を出すべきなのかっていうところをもっと議論をしていきたいなと思っています。


私自身も、ソニックガーデンのレベルの高い議論に早くついていけるようになりたいな、と思いました。本日はありがとうございました!


この記事の筆者:須田 愛吏
ソニックガーデン2020年度の新卒社員。プログラミング未経験のため、プログラミングを勉強しながら広報関係の仕事を主に担当している。

ソニックガーデンでは毎週ストーリーにて、弊社社員の取り組みや仕事への向き合い方などをお届けしております。

最新情報をキャッチアップしたい方は、ぜひ会社ページをフォローして下さい!

・・・

株式会社ソニックガーデンでは一緒に働く仲間を募集しています
同じタグの記事
今週のランキング