コイニー入ったら読みたい10冊《サーバサイドエンジニア編》
Coiney サーバサイドエンジニアの江良です。
月日が経つのは早いもので、コイニーに入社してから5ヶ月が経ちました。コイニーの社員に影響を受けて勉強していくうち、本棚に色々と本が溜まってきたため、「コイニー入ったら読みたい10冊《サーバサイドエンジニア編》」と銘打ってそこから10冊を選びました。ぜひ手に取ってみてください。
1. FinTechの概要をつかもう
まずは FinTech についてざっくり理解しましょう。初心者におすすめ、ということでコーポレート・スタッフの豊川さんにお借りしたのがこの本です。
(1)FinTech入門
FinTech と一口に言っても、決済のほか、個人資産管理(PFM)、仮想通貨、クラウドファンディング、ソーシャルレンディングなど、色々なサービスがあります。『FInTech入門』は、それら多岐にわたる FinTech サービスについて概略を掴むのに最適の一冊です。
FinTech について詳しい方も、あまりよく知らない方も、まずはこの一冊を手にとってみることをオススメします。
2. クレジットカードについて学ぼう
さて、コイニーに入社すると、これまで聞いたことのない単語を耳にする機会がグッと増えます。イシュア、アクワイアラ、国際ブランド、オーソリ、セツルメント、EMV……。頭を抱える自分にグルメ担当の吉田さんが紹介してくれたのが以下の2冊です。
(2)カード決済業務のすべて―ペイメントサービスの仕組みとルール
(3)クレジットのすべてがわかる! 図解カードビジネスの実務
どちらもクレジットカードビジネスについて網羅的に書かれた良書ですが、特に(3)がオススメ。カードビジネス業界の動きから、カード事業者の業務の詳細に至るまで、書名の通り「クレジットのすべて」がまとめられた一冊です。
3. いまのシステムについて知ろう
コイニーの決済を支えるバックエンドシステムは、Ruby と Ruby on Rails で書かれています。現行のシステムは、より保守しやすくするため Java への移行を進めていますが、まだまだ Rails で動いている箇所が多いのも事実です。効率よく移行を進めていくためには、いまのシステムについて知る必要があります。
Ruby と Ruby on Rails の入門書として、以下の2冊をセレクトしました。
(4)たのしいRuby
(5)Ruby on Rails 4 アプリケーションプログラミング
どちらも平易な文章で読みやすく、Ruby 初心者の自分でもスッと頭に入りました。Ruby on Rails については、最新版として『Ruby on Rails 5 アプリケーションプログラミング』が出版されているため、こちらを読んでみるのも良いかもしれません。
4. これからのシステムについて考えよう
先ほどご説明した通り、コイニーではバックエンドシステムの Java への移行を進めています。Java はバージョン 8 を使っており、Lambda、Stream、Optional などのモダンな記法を用いるのがスタンダードです。また、フレームワークには今後のマイクロサービス化を見据えて Spring Boot を使っています。
いずれの経験もない自分が、勉強するため手にとったのが以下の2冊。
(6)Javaプログラマーなら習得しておきたい Java SE 8 実践プログラミング
特に(6)については、Java SE7 までしか経験のない私が Java SE8 を身につけるのにぴったりの良書でした。老害にならないで済みそうでよかった。
5. より良いシステムを作ろう
コイニーでは(多くの会社がそうであるように)より良いシステムを作るため、エンジニア間でコードレビューを実施しています。前職でほとんどコードレビューを受けて来なかった自分は、人生初のプルリクエストで大量の指摘を受けてしまいました。
このままではリリースできない……! 困った時は本を読みます。
(8)リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック
(9)Head Firstデザインパターン ―頭とからだで覚えるデザインパターンの基本
コーディングとクラス設計については(8)(9)が、アーキテクチャパターンについては(10)が参考になりました。(10)はこれまでに紹介してきた中でも特に分厚く、通読するのが大変な一冊ではありますが、ぜひ挑戦してみてください。
コイニーではサーバサイドエンジニアを募集しています。読書好きの方もそうでない方も、ご応募お待ちしております!