はじめまして。株式会社 Geolonia 採用担当の山本です!
これから、Geolonia で働くエンジニアメンバーのご紹介をさせていただきます!
最初のメンバーは小学生からプログラミングを実践し、現在は屋久島からリモートワークで働く小林さんです!
インターネット黎明期からパソコンに触れてきた小林さんが、Geolonia に感じる可能性とは?是非ご一読ください!
全員がフルリモートワークで働き、社員の居住地で全国制覇を目指しているGeoloniaですが、小林さんは屋久島にお住まいなんですよね?
今年2023年の2月に家族4人で引っ越しました。現在は、自宅を建設中です。
土地が安い分、広い家にすべて、ゆったりした環境の中に、仕事ができる環境を整えることができます。
屋久島には2〜3年ほど前に光回線が通っていて、仕事で不便なことはまずないですね。妻の実家が近いこともあり、屋久島への移住を決めました。
私はアメリカ東海岸の小さな町で育ったので、自然が多く、住んでいて困ることはありません。子供たちも、学校の校庭がかなり広いので、東京に住んでいたころよりも早い時間に学校へ出かけていきます。
Geolonia に入ったきっかけは?もともと位置情報や地図情報に興味があったのでしょうか?
2020年のはじめ頃、もともと、前職を退職し、ゆっくりしようと思っていたタイミングに、知り合いだった代表の宮内さんから声がけがありました。
位置情報に興味をもったのは、実は大学時代です。
電車からバスに乗り換えて通勤していたのですが、バスは15分~20分間隔と長いので、乗り換えのタイミングで走るべきか、ゆっくり歩いても間に合うか、知るためのアプリを自分で作っていました。
当時はちょうど iPhone が日本で発売されたばかり。
それまで PC の中の世界と、現実の物理世界は別物という感覚でしたが、スマホが登場したことによって、スマホの中の世界と物理世界がリンクし、それと同時に「位置情報」は IT の世界の中でも重要になったと感じました。
現実世界をデータで表現できるという観点で地図は大好きです。
地図というもの自体が持つ歴史も長く、人間が生きている限り、地図は必要なものだと思います。
表現の幅が広いことも地図の魅力の一つです。
「画像」として地図を描き、保存するときには、「座標」を基準において共通項を持たせることが重要になります。
地図データの表現については統一もされてきていますが、使い方によってさまざまな表現が可能です。
3~40年前にアメリカで決められたルールや歴史もあり、日本だけでも座標系は19個あります。
地球自体がきれいな楕円というわけではないこともあり、東京では1メートルが1ピクセルだが、沖縄では1メートルが1ピクセルではない、ということも。地図のルールや定義は奥が深いです。
座標系とは?
地球上の位置を座標で表すための原点や座標の単位などの取り決めのこと。
▼国土地理院 19の平面直角座標系
https://www.gsi.go.jp/sokuchikijun/jpc.html
今はどのようなプロジェクトを担当されていますか?
これまでは大手企業や官公庁から受託した案件でクライアントから相談を受け試行錯誤しながら研究開発として進めていた案件も多かったですが、最近は「Geolonia Maps」の開発に取り組んでいます。
OpenStreetMap と呼ばれる地図界の Wikipedia のようなオープンデータがあるのですが、日々日々増えていくオープンデータを自社の「ベクトルタイル」として配信できるように定義に沿って分類・整理や簡素化などの処理をする必要があります。
この元データの加工を自動化するためのツールを開発し、1~2日かかっていた処理を3~40分で終えることができるようになり、更新の頻度を上げることができるようになりました。
エンジニアとして大切にしていることは何ですか?
相手の問題を解決しようとする姿勢が大切だと思います。
クライアントが「これが欲しい」と話していたとしてもクライアント自身が本当のニーズに気づいておらず、口にしていることが本当の要望ではないこともあると思います。
そのため、クライアントが何を言っているか、ではなく、何をしようとしているかを理解し、本当に欲しいものを提案することが大切だと考えています。
相手が何をしているか理解し、どうしたらハッピーになれるか、考えるプロセスが重要です。
エンジニアになったきっかけを教えてください!プログラミングとの出会いは?
おそらく、小学校3年生くらいのころだったと思います。
きっかけは覚えていませんが、歩けるようになった、しゃべれるようになったことと同じくらい、気づいたらパソコンを触っていたと思います。
当時は、1998年だったので、今のようにインターネットも速くなく、昔はコンパイラも有料でした。両親からプログラミングの本やソースコードをマシンコードに変換するためのソフトなども買ってもらい、いろいろ試しながら作っていたと思います。
小学生のころに作ったアプリケーションで覚えているものは、本の貸し出しを管理するプログラムです。母がバイオリンの先生をやっていたのですが、生徒さんにバイオリンの本を貸していて、「あの本はどうしたかな?」と困っていることを解決しよう、と思ったことがきっかけです。
PCとバーコードスキャナーを置いて、借りていくときと返す時にスキャンしてもらうことで、リストに貸し出し中かどうか表示されるプログラムをつくりました。
昔から謎解きやパズルがすきだったので、問題を解決した!ということに達成感を感じましたね。
小学生のときからプログラミングをしていたんですね。中学校では、どのような思い出がありますか?
中学の時はいたずら心でやったことが問題になり大変でした!
中学になると、今の日本のように、PCが一人一台支給されるようになったのですが、教育のためのデバイスなので、ゲームや音楽の再生などができないよう、機能が制限されたPCが支給されます。
そこで、誰でも見られる共有ドライブ上に、偽物の iTunes のようなアイコンを置き、開こうとした人のPWを盗み、サーバーに送るシステムをつくりました。実際10名ちょっと、引っかかる人がいました。
システムをつくったときには「理論上できるけど、実際やってみたらどうなるのかな?」という好奇心で、少し悪いことをしている自覚もありつつ、楽しい気持ちが勝っていました。パスワードを盗んでどうこうしようという気持ちはなかったですが、1週間の停学処分になってしまいました。
アメリカには「Curiosity killed the cat」(好奇心は猫をも殺す)という諺があり、自分はまさにそれだな、と思いました。笑
今となっては笑い話で済んでよかったです・・!高校ではどうでしたか?
高校時代は IRC という今の SNS のようなコミュニティに入り、チャットボットをつくったりしていました。
最初のアルバイトをしたのも高校時代です。父が日本語教師をしていた学校で、ITのインフラ環境を整備するアルバイトを始めました。
そのころは中学だけでなく高校でも一人一台 PC を支給することが広がってきた時代で、ネットワークなどの整備や PC が壊れたときの簡単な修理を学校で行う必要が出てきたタイミングです。
IT担当の大人も3名ほどいましたが、みんな手探りだったので、「これはどういうことなんだろう?」「デバックしてみよう」など試しながら進めていくことも多かったです。
日本と違って、先生は職員室ではなく各教室に自分の席があり、電話を使うことが多いのですが、それぞれの教室の電話をIP電話に切り替えるための電線撤去やネットワークケーブルを引く工事にも関わりました。
ソフトウェアだけでなくインフラにも興味があったんですね。
謎解きやパズルが好き、と話しましたが、物事や機械などの裏側がどういう仕組みで動いているんだろう?なんでこうなっているんだろう?と深堀することが好きなので、インフラの仕事も楽しかったです。
子供のころから百科事典が好きで、今でも Wikipedia を3時間以上読み続けてしまうこともあります。
裏側を知ったり、いじってみたりして、どうすればどう動くか、わかることに達成感がありますね。
大学で日本に行こうと思ったのはどのようなきっかけでしたか?
高校生まで住んでいた町が、人口5,000人未満のかなりの田舎だったので、一度都会に住みたい!と思い、ニューヨークか東京に行こうと思いました。
ICU に合格し、叔父さん・叔母さんが東京に住んでいたので、そこへ下宿できたことと、学費もアメリカの大学より安く、9月入学ができる、英語での講義もある、といったことが決め手でした。
ICU には教養系の学部しかなく、入学後に専攻を選びます。
最初は政治学・社会学を考えましたが、なんか好きじゃないかも、、と思い、プログラミングのコースに行ってみましたが、基礎的なコースでなんか違うな、、となりました。
ただ、そのクラスで出会った友人が独学でプログラミングを学んでいて、少し話をしたところ意気投合。いっしょに開発の会社をやってみよう!と、簡単な WordPress のサイトやアプリをつくり始めました。
それまでも個人プロジェクトでいろいろと試してきたことはありましたが、クライアントに納品する、運用するとなると全然違うことに気づき、新鮮で勉強になることが多かったです。
日本語も働き始めてからクライアントが日本人なので、大学の授業よりも実践をこなすことで勉強が進んだと感じました。
自分で奨学金を借りて学費を払っていましたが、大学でお金を払いながら勉強するよりも、働いた方がお金をもらいながら学べることが多く、休学するにもお金がかかるため、大学は3年目で退学しました。
その後、学生時代に起業された会社はどうなりましたか??
3年くらいは続けました。ただ、2人ではじめて、2人ともワーカホリックで好きなことの延長としてやっていたので、事業が拡大しても人を雇って、一緒に働いてもらって、スケールさせるのは難しいと感じました。人を採用してマネジメントしていくことのはなかなか、未経験の自分たちでは難しいと感じました。
そこで一度、他の会社で勉強したい!と思って転職活動をしました。
転職先ではどのような経験を積まれたのでしょうか?
様々なスタートアップで経験を積みました。
当時800人規模から1,000人規模へ急成長していたビズリーチでのクラウドサービスの開発や、当時50人規模の料理レシピ動画サービス「クラシル」のインフラチーム、もっと規模の小さな、医療系クラウドサービスの開発会社などで経験を積みました。
様々な規模の会社の経験で、どのようなことが学びでしたか?
人が増えると、いろんな無駄が発生する、大きい会社ほど無駄が多いと感じました。例えば、全員が集まる必要のない会議などです。
営業とエンジニアの距離も離れていくと、営業と一緒にサービスを磨くというよりは、つくってみて、売ってみるという感じでした。
大きな組織では経費利用のルールや申請プロセスなども細かく、その点は面白く観察していました。
今後、Geolonia も組織が大きくなっていくとしたら何を大切にしたいですか?
チームが大きくなりすぎると、必ずコミュニケーションをとることが難しくなるタイミングが来ます。チームはできるだけ小さくしたいですね。
Amazon 社が提唱する「ピザ2枚ルール」が有名ですが、チームが8~10名を超えると、気軽に相談できない雰囲気になったり、コミュニケーションロスなど課題が出てきます。
ステージを見極めながら、大きくなったチームは2つに分けて動かす、ということをやっていきたいですね。
小さなチームではその分、一人ひとりの責任も重くなりますが、一人ひとりが責任を持てるチームにしたいですね。
最後に、Geolonia で実現したいと思っていることを教えてください。
誰でも、「これ地図でできないかなぁ」と思ったら、Geolonia Maps を使えば「簡単に」できる、そして地図を使って日常が変わる!という未来を実現したいです。
少し前の話ですがクライアント先で、「コロナのワクチンマップをつくりたい」というニーズがありました。
ただ、そのタイミングでは、このシステムをつくったとして、いつまでこの状況が続き、システムが必要とされるかはわからない、という状況でした。
このような状況の中だと凝ったシステムを作り込むことに対してリスクが伴ってしまいます。
「簡単に」作れることで突発的なニーズに応えるシステムを作りやすくなります。開発に1年など時間とお金をかけても、その後必要とされなくなってしまう可能性もあります。
こういうシステムをつくりたい!というアイディアが浮かんでから、システムとして実現するまでのリードタイムをなるべく短くしていくことが目標です。