20代エンジニアこそシビックテックに参加してほしい!
今年の2月にシビックハッカーデビューしてからもう少しで1年がたとうとしています。僕自身はシビックテックちょっとできる曲線(ダニンググルーガー効果)の下り坂にいるところですが、時間と体力の半分以上をシビックテックに注いでいく中で20代エンジニアこそシビックテックに参加するといいことがたくさんあると感じています。
そこで、同年代エンジニアへのお誘いをクリスマスプレゼントとして24日のアドベントカレンダー記事としたいと思います!
まずシビックテックとはなにか?ですが、日本のシビックテック団体 Code for Japanのウェブサイトから引用します。
もっとシビックテックそのものを詳しく知りたいという方は、こちらのnoteがおすすめです。僕よりもうまく説明してくれる人は他にたくさんいるのでここでは省略します。
シビックテックの面白さ
① 新しい技術を試せる
シビックテックは「市民 x テクノロジー」の造語で、社会的活動の一種で、いわゆるボランティアな活動です。その活動は地道なもので大きなインパクトを出すためにはクリアしないといけないことが相当数あります。
でも、技術的にはかなり楽しめる環境にあります。例えば、新型コロナウイルス対策サイトはNuxt.jsでつくられていたり(開発は3年前)、Solidityでコントラクトを書いてゼロ知識証明による認証を試してみたり、新しく出てきたオープンソースプロジェクトを試しに使ってみたり…
新しい技術を試したり学んだりするときには、使ってみることそのものを目的にしても良いですが、それが何か問題を解決したり、楽しい体験を生み出したりすることに直接繋がっているとより一層楽しくなります。使ってみたいと思っていた技術で遊びながら誰かの役にも立つって楽しそうじゃないですか?!
② つくったものに対するフィードバックを直接得られる
シビックテックは普段生活する中で不便に感じていることや、言われてみれば欲しかったものを発想の起点にし、テクノロジーを用いてそれを解決する活動で、すぐに試しに使ってもらったり、自分たちで使ってみたりできるので、成果物へのフィードバックを比較的早く得られます。
事業会社にしても受託開発会社にしても、開発しているサービスやツールのお客さんは自分から遠い場所にいることが多く、その反響を直接聞くことはあまりないものです。シビックテックには自分がつくったものを少人数であっても目の前の誰かにつかってもらえる体験があり、役に立つ実感を得やすい活動だと思います。
③ いろんなエンジニアタイプと知り合える
シビックテック界隈にはいろんなエンジニアタイプがいます。地図を得意としていたり、データ分析を得意としていたり、データモデリングを得意としていたり、プロジェクトマネジメントを得意としていたり、普段の仕事ではあまり関わらないタイプのエンジニアと関わることができます。
エンジニアとして経験の浅い内にいろいろな種類のエンジニアを知ることはとても良いことでした。基本的にエンジニアは学ぶことが好きな人がなる職業だと思っているのですが、シビックテック活動に参加するたびに知らなかった面白そうなことに出会うことができています。
また普段、行政職員や大学教員、コンサルタントをしている人たちも参加しています、そういった方と一緒にコーディングをしたり、プロダクトをつくったりする体験は普段は味わえない楽しさがあると思います。
シビックテックで活躍して楽しむコツ
すこしシビックテックに参加してみたくなってきましたか?!
実際にシビックテックに参加してみると予想と違うことがたくさんあります。そのギャップによって一度参加しただけで離れてしまうことはもったいないので、今年僕が学んだシビックテックで活躍して楽しむコツをいくつか書きます。
① ゆっくり、じっくり、さくっと
シビックテックに参加してみるとスロースピードに驚くことがあります。特に普段からリリースに追われているエンジニアからすると、この人たちは本当に完成させる気があるのか?と疑うこともあるかもしれません。
ただ、いろいろな人にとって良いものを、いろいろな人と一緒につくるためにはスロースピードでプロジェクトを進めていくほうが良いこともたくさんあります。今はまだ言語化できていないですが、急いでも意味がないことは実感しているところです。
プロダクトのコンセプトから機能、デザイン、実装方法、なにからなにまで一緒に考えることが大切です。各自が頭のなかで思っていることを伝えないまま実行してしまうと、全体性のない部分を寄せ集めただけのプロダクトになったり、作業の重複が生じて出戻りが発生したり、いろいろな問題が起きます。
一度、具体的になにをどんな風につくるのかが決まったあとは、細かいことは考えずにまずは形にしてしまうことが大切です。デザインや実装の途中に迷ったことがあっても、まずは形にしてみる。各自の頭にある曖昧なイメージをもとに相談や議論をしても空中分解することがほとんどだと思います。まずはサクッと実装して形にしてしまうことが大切です。
② みんなリーダーを求めている
シビックテックにはコミュニティがあります。新しいコミュニティにはいるときは勇気のいるもので、コミュニティにはすでによく活躍しているリーダー的な存在の人がいるように見えます。そうした状況では、あまりでしゃばりすぎないほうがいいかな、すこしの間は見ているだけのほうがいいかな、と思ってしまいます。
でも実際には得意なことを表明して、できることをどんどん進めてくれる、リードしてくれる人を求めています。シビックテックを成功させるためにはやることがたくさんありすぎて、手におえていないことがほとんどです。それはGithubのIssueになっていたり、コミュニティのSlackやDiscordなどで議論されていたりします。
これはできそうだとおもったものがあれば、小さくてもどんどん手を挙げて進めていくといろんな人から感謝されて、自分も楽しくなってきます。
そんなに深入りしたら抜けられなくなるんじゃないか?本業があるし、、そんなふうに思ってしまうこともあります。ただ、シビックテックそのものがゆっくり、じっくり進んでいくものなので、途中で一旦休止期間があっても大丈夫です。フェードアウト、フェードインを繰り返してできるときにできることを、長く続けることが大切だとおもいます。
③ 話したことは全部ストックしておく
シビックテックは基本的に非同期コミュニケーションで進んでいきます。火曜日と日曜日に活動できる人、週末だけ活動できる人が一緒に開発したり、来週から本業が忙しくなる人がいたり、プロジェクト終盤で入ってきてくれる人がいたり。
自分の役割や担当を誰かに引き継ぐことや、誰かの担当を引き受けることもよくあります。
そんなとき、情報がまとまっていないと文脈を理解するために多くの時間がかかって活動するのが億劫になってしまいます。あとからさかのぼりやすいようにすべての情報をストックしておくことが大切です。
Slackやもくもく会でちょっとした雑談から良いアイディアが生まれて、それを実装することになったとしたら、まずはGithubのIssueやタスク管理テーブルに記入しておきます。
そうしておくと、その場にいなかった人やあとから入ってきた人からもフィードバックをもらえたり、その実装を任せることができたりします。
シビックテックに参加してみる
シビックテック団体は日本にいくつかあるので気になったところのSlackやFacebookグループにはいってみるのが良いと思います。
僕がスタッフをしている Code for Japan にはコミュニティメンバーがあつまるSlackと活動プロジェクトの情報が集まっているコミュニティ・ポータルがあります。ぜひ活動に参加してみてください!
また、毎月第4土曜日にはSocial Hack Dayというハッカソンを開催しています。Social Hack Day ではいくつかのプロジェクトがあつまって、それぞれのプロジェクトでアイディアを考えたり、もくもく開発を進めたり、ユーザーテストを実施したりしています。
初めて参加する方に向けたオンボードの時間もあるのでぜひ参加してみてください。
下記Peatixからイベント情報の確認と申込みができます。