Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

新卒エンジニアが2年半どうやって技術を勉強したか?

More than 1 year has passed since last update.

はじめに

私は新卒未経験でIT企業に入社して、スマホアプリの開発に携わっています。
今現在、インドネシアでITアドバイザーとして働くにあたって、今までどのように技術を身につけてきたかを
整理したいと思います。

サマリ

大きく分けて3つの方法があったかなと思います。
1. インプットの習慣
2. アウトプットの習慣
3. 技術書輪読会

インプットの習慣

習慣の大敵は習慣にするまでの意思が続かないことだと思います。
そこで、やったのは、インプットの自動化です。

Qiita記事の自動取得

Qiitaの記事で「Swift」のクエリに引っかかるものを自動で毎朝メールが来るようにGASを使用して設定しました。

毎朝メールが来るので、自分から主体的に調べる必要がないのが習慣化できたコツだと思います。

以下にスクリプトを載せておきますね。

GAS
var target = "swift";
var mailAddress = 'XXX@gmail.com';

function getQiitaItems() {
  // 昨日の日付を「yyyy-mm-dd」の形式で取得
  var now = new Date();
  var yesterday = new Date(now.getFullYear(), now.getMonth(), now.getDate() - 1);
  var formattedYesterday = Utilities.formatDate( yesterday, 'Asia/Tokyo', 'yyyy-MM-dd');

  // 1ページ10記事の単位で1ページ分取得する(記事作成日でソート)
  var url = "https://qiita.com/api/v2/items?query=" + target + " created:%3E%3D" + formattedYesterday + "&page=1&per_page=10&sort=created";

  var urlFetchOption = {
    'method' : 'get',    
    'contentType' : 'application/json; charset=utf-8',
    'muteHttpExceptions' : true
  };

  var response = UrlFetchApp.fetch(url, urlFetchOption);
  var response = JSON.parse(response);

  var mailBody = "";

  // もし取得した記事が一件もなければ何もしない、記事が一件以上あればメールを送る
  if (response.length == 0) {
    return false;
  } else {
   // 1記事ずつ取得する
    for(var i=0; i<response.length; i++) {
      var title = response[i].title;
      var url = response[i].url;
      var created_at = response[i].created_at;
      var body = response[i].body;
      var mailBody = mailBody + title + "\n" + url + "\n\n"
    }
    return sendMails(mailBody);
  }
}
// メールを送信する関数
function sendMails(mailBody) {
 // メールアドレス、件名、本文の順番で
  MailApp.sendEmail(mailAddress, 'Qiitaくん(' + target + ')', mailBody);
}

これをやったことで毎日少なくとも関連記事のタイトルだけでもチェックするようになりました。
気になるタイトルがある日はついついその先まで調べてしまいます。

インプットの一歩目のサポートツールとして、とても重宝しています。

アウトプットの習慣

アウトプットの意識を持ってから、確実に知識の定着が深くなりました。
僕がやったのは2つです。

会社のチャットツール(slack)に投稿

気になったこと、いい記事をなるべくシェアするようにしていました。

Qiitaの記事作成

これはまさに今もこの記事を通してやっているようなことですが、言い方悪いかもしれませんが、少し雑な記事でも、それを書くことによって、もう一度自分の中に知識が入り込んできます。

また、間違った投稿をしたりすると、メッセージをもらえたりすることもあるので、誤った理解を防ぐことにも繋がります。

技術書輪読会

輪読会に参加する以前も技術書を読むことはありましたが、、一人で読んでいるとわりと続かないことが多いです、、

思い出したときに、またちょこっと読んで、、みたいなことをしていて
いつまでも知識を身につけて、忘れて、身につけて、、の繰り返しみたいになってしまっていました。。

技術書輪読会のやり方

ポイントは本を読んでこないこと

本を読んできて、その内容を話し合うみたいにしてしまうと参加のハードルが高くなったり、続かない人が出てきます、、

こんな感じでやってました

20分・・・みんなで同じ章を読む
20分・・・みんなで読んだ章の分からなかったところを話し合う

↑これを繰り返し2周やったりしていました。
それを毎週○曜日に開催とかにすると比較的、継続しやすいのかなと思います。

まとめ

ポイントは、、
アウトプットする場所をつくること、持つこと
あまり意思を必要としない形で習慣化させること
だと考えています。

ぜひ、皆さんの学習法も教えて下さい。

その他

技術のことだけでなく、一般教養あたりのことに関する読書も同じようにアウトプットする習慣を身につけたことで、1年間で200冊の読書をすることができました。
↓↓↓
https://www.instagram.com/book.stock.tetsudoku/

最近始めたインドネシア語学習も同じようにインスタを活用しています。ご参考までに!
↓↓↓
https://www.instagram.com/bahasa.indonesia.jp/

tetsukick
2017新卒iOSエンジニア 2019/10 よりインドネシア駐在 使命は、ある世界での当たり前のなにかを作ること。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away