はじめに
新生活応援キャンペーン的なものをやっているということで私も1記事書いてみようと思います。
まず私がどんな人か簡単に書きたいと思います。
- エンジニア歴:2年(グロースハッカー→Webエンジニア→iOSアプリエンジニア)
- 学歴?:文系。文理融合の情報系学部出身。学部卒。
- 大学で使っていた言語:Ruby(現在の仕事ではほとんど使わず)
つまり何が言いたいかというと、皆さんとあまり変わらないかなりペーペーのエンジニアだということです。エンジニア歴2年って言ってますがグロースハックや仕様検討をやっている期間もそれなりに長いので実際コード書いてる期間は短く、技術面でまだまだです。
そんな私がこんなことやったら成長できるんじゃないかと思ってやっていることについて書いてみようと思います。
Qiita駆動開発
今一番力を入れてやっていることです。「1週間に1記事は投稿するようにする」と自分で決めてやっています。たまに人前でも宣言して追い込んでいます。私は去年の11月頃にQiitaのアカウントを作成して上記の目標をほぼ守って勉強できています。
エンジニアという職業は特に他人の情報に助けられて成り立っている職業だと思うので、他のエンジニアを助けるという意味でも書いていきたいと思うところです。
そんなQiita駆動開発ですが、以下のようなメリットがあります。
メリット1:かなり勉強になる
やはり他人に見られるとなるとちゃんと調べるようになります。コードを載せるときはリーダブルコードに書かれているようなことはクリアするように書こうという意識が働き実際その習慣がついてくるので、普段のエンジニア生活にもいい影響が出ます。
メリット2:やる気が出る
書いた記事がストックされると嬉しいものです。いっぱいストックされたら次もまた頑張ろうという気になりますし、ストック数が少なかったらどこが悪かったのかを振り返って、次はこんなかんじで書こうという気持ちになり、それはそれでやる気が出ます。
はてなブログへの投稿
勉強会参加レポートやその他思ったこと等はこちらにどんどん載せていくことにしました。こちらに気を取られてQiitaの週1更新が守れていない時もありますが。。。
勉強会参加レポートを書こうと思うと必死でノートテイキングをすることになるので、しっかり頭に入ってきますし、復習もしやすくなります。
勉強会への参加
私自身は1年目の秋に初めて外部の勉強会に参加してとても刺激を受け、それ以降現在までに25回程度勉強会に参加しました。いろいろな雰囲気の勉強会がありますが、ハッシュタグを使ってツイートしてる人がたくさんいる勉強会は盛り上がっているし参加者に親近感が湧くので好きです。
ではまずメリットについて紹介したいと思います。
メリット
1.お手軽に技術情報を手に入れることができる
自分でいろいろ情報を収集して学習しようともちろん勉強になるのですがかなり時間がかかります。それに、「調べる」という行為をするためにはそれについて多少は「知っている」ということが前提になります。でも、「今までこんなの知らなかったけどすごい便利そうじゃん!」ということは往々にしてあります。そんな新しい出会いが待っているのが勉強会だと思います。
しかもわからなかったらすぐ聞けます。大抵の勉強会はLTや講演が終わった後に懇親会があるので発表を聞いて疑問に思ったことは懇親会の時にその人のところに行って聞くことが出来ます。結構親切に答えてくれる人が多く、勉強になります。これはWebで情報収集している時には感じることができないメリットだと思います。
2.エンジニア友達を作ることができる
勉強会に参加すると色々な人に会います。必ずしも勉強会で話しただけで仲が良い友達ができるというわけではありませんが、FacebookやTwitterで繋がるだけでも有益だと思います。勉強会に来ているような人はTwitterで技術に関するツイートをしていることも多く、その人のツイートを見ているだけで勉強になることもあります。
3.他社の情報を得ることができる
別にスパイができるという話ではありません。他社の人と話しているとプロジェクトの進め方や業務上使っている便利なツール、ライブラリなどを知ることが出来ます。
勉強会情報の収集方法
1.勉強会情報を掲載しているサイトをチェックする
代表的なサイトはconnpass / dots / Doorkeeper / ATND / Peatix / upmeetup.infoだと思います。
私は毎日勉強会情報をチェックしていますが、基本的にはconnpass中心にチェックし、たまにdots、稀にPeatixをチェックしています。せっかくなのでこの3つについては詳細に説明してみようと思います。
■connpass
たまに「申し込みはdotsで」のようなものを見かけますが、基本的には直接connpassで申し込みができてかつ情報量も多いので一番利用しています。
ログインするとダッシュボードは以下の通りです。新着イベントページもあるので、新しく掲載された勉強会がチェックしやすいです。
また、connpassにはiOSアプリも存在しています。すぐにチェックできる、ログイン不要という点ではいいのですが、検索機能がないのが残念です。
■dots
エンジニア向けの勉強会、交流会等の情報が提供されています。提供元としてはATND, connpass, Doorkeeper, Zusaarなど多岐に渡るのでここを見ておけば他のサイトを見に行く必要はあまりありません。が、dots主催の勉強会は少ないため各勉強会に申し込みをする場合は「情報提供元ページヘ」リンクをクリックしてconnpass, Doorkeeperなどのサイトに行かなくてはならない時が多いです。
ログインしていればおすすめの新着情報が見られます。ログインしていない場合は新着情報を見られるページはないようです。
dotsはカレンダー形式で開催される勉強会を表示しているページがあります。このページはログインしていなくても見ることが出来ます。
dotsのちょっと面倒なところは、勉強会リンクをタップするといちいち新しいタブで開くことです。スマホで見ているときは特に煩わしいです。
■Peatix
このサイトは技術関連のものだけでなく色々なイベント情報が集まっています。ここで掲載されている技術イベントはdotsなどには掲載されていないことが多いです。なので、基本的には上記2つのサイトでチェックして、たまに所属グループを中心に勉強会情報をチェックしています。このサイトは検索機能が弱いところが難点です。
PeatixにはiOS/Androidアプリが存在しています。私も以前はこのアプリを入れていたのですが、しょっちゅうセッション切れが起きてログインを要求されるため「アプリを入れている意味ないなー」と思って削除してしまいました。
2.勉強会情報を呟いているアカウントをフォローする
かなり多くの勉強会情報をツイートしているのはupmeetupです。勉強会が公開された時1回だけでなく何度もツイートされるので、ツイート全てを追う必要はありません。
また、ある地域のみの勉強会情報を呟いてくれるアカウントもあります。関東だとatend_kantoというアカウントです。atendは東北や九州など他の地域の勉強会情報を呟いているアカウントもあるので、自分の地域に合ったアカウントをフォローしておくといいです。
その他connpassやdotsのアカウントも存在します。
3. Facebookで友達から流れてくる情報をチェックする
まずは勉強会に行ってエンジニアの友達を増やしましょう。
勉強会でLT発表
ただ聞くだけではなく自分も勉強したことを共有したい、発表した内容について他の人と議論してみたい、エンジニアの友達をもっと増やしたいと思い、去年の12月から発表するようになり、現在までの間に外の勉強会では8回程度LTをさせていただきました(社内でやっている勉強会の発表も含めると倍くらい?)。
Qiitaの記事は軽めのものを書いて、LTではちょっとがっつりとした内容のものを喋っています。今までiOS系、UX系、JavaScriptの話をしてみましたが、反響もあって楽しいです。
「まだ初心者だし叩かれそうで怖い」と思う人もいるかもしれませんが、「LT初心者大歓迎!」という勉強会もあるので怖がらずにLTしてみるといいと思います。
英語の文献でも積極的に読む
最新の情報が英語資料しかない、単純に日本語情報が見つからないということはよくあります。その時に避けるのではなくて積極的に読むべきだと思います。
ちょっと趣旨が異なりますが私の体験談を紹介します。
SwiftLintについて詳しく知りたくていろいろと調べていた時期があったのですが、日本語の資料がそこまで多くありませんでした。また、あったとしても情報が古くそのまま信用していいのかわからない場合もありました(その頃SwiftLintは1ヶ月に6回バージョンアップするなど、変化の激しい時期でした)。
となると公式(英語)の文書を見るしかありません。ただ私には英語がスラスラ読めるほどの能力はないので「ん?これなんだろう?」と思うことがあったら、とにかく動かして確認してみたり実際にライブラリの中身を見たりしました。SwiftLintの場合はコード内に「こんな文字列が並んでいたら警告出すよ!」「これはセーフだよ!」という例が書かれていたので、それも参考にしました。
このように原文だけで解決しようとしなくてもいいので必要に応じて英語の文献も積極的にあたるべきだと思います。
技術コミュニティへの参加
やはり様々なエンジニアがいっぱいいるところに身を置くことも大事だと思うのでdots.女子部に所属し、今では運営メンバーに入っていいます(入ったばかりでまだあまり貢献できておらずあまり語れませんが)。
Gitに草を生やす
私はQiitaで扱った内容を実際に書いてみた的な位置づけでGitを使っています。人によっては「毎日何かしらコミットする!」と決めて実行している人もいるようです。
Qiita駆動開発のところでも書いたように、他の人に見られても恥ずかしくないコードを書く必要があるので、リーダブルなコードを書く癖がついて良いです。
最後に
工夫次第でモチベーションを上げつつ継続的に勉強をすることができます。皆さんも自分に合ったいい方法を見つけてエンジニアとして磨きをかけてください。