誰もが働ける機会を増やす。自分らしく働ける社会をテクノロジーにより創造する。そんな新規事業に挑戦してみませんか?リリース間近に控えた今、Railsエンジニアを募集します。
主なテクノロジスタック
フロントエンド
- React.js, Redux, FlowType
- Cordova
バックエンド
- Ruby on Rails 5系
- Node(WebSocket)
- PostgreSQL
インフラ
- AWS
- ServerSpec
- Terraform
その他
CI: CircleCi
バージョン管理: git, github
プロジェクト管理: ZenHub
プロトタイプ開発: Adobe XD
デプロイ: Jenkins
ローカル開発環境: Docker
希望するスキル
- マウンタブルエンジン構成の Rails アプリを開発メンテできること
- 認証関連の知識と実績
- Websocket / Socket.io サーバ関連の知識と実績
- iOS, Androidアプリの開発経験
- 英語でのテキストコミュニケーションができること
職場の環境や実際の仕事
pook というサービスは、ユーザーがオンラインだけではなくリアルでの行動も伴うサービスであるため、リアルタイムの位置情報共有機能を開発したり、スマホアプリとWEB版両方を必要とするため、React.js を用いたハイブリッドアプリに挑戦するなど、技術的なチャレンジも積極的に行っています。
そういった開発を行っていく中で、チームとして以下のようなことに取り組んでいます。
- コードの品質の担保
- レビュー
- テストコードを書く
- 定期的なライブラリのバージョンアップ
- 技術的なチャレンジ
- リアルタイム位置情報共有機能
- React.js を用いたWEBアプリとネイティブアプリの開発
コードの品質を担保するために行っている取り組みについては、インデントの指摘など、細かいレビューや機械的に行える部分は lint ツールなどを導入し、よりアプリケーションの設計や実装方法に対してコメントする文化を醸成しています。
また、 git hub の運用フローもドキュメントを書いて明文化しており、最近では AngurlerJS のオープンソースのコントリビューション方法に習い、コミットメッセージに prefix を用いたり(機能追加に feat: 修正に fix: などをつける)、プルリクの単位を小さくしたりしています。そうすることで、レビュワーの負担の軽減や、後で振り返った際に何故そうしたかのログをたどりやすくすることも狙いです。
リリース前のアプリなので、ユーザーテストによっては機能の改変やブラッシュアップが発生します。そう言った状況でもバグが起きにくくするため、テストコードも積極的に書くようにしています。フロント側では、Redux の action , reducer に関するテストと、enzyme を用いた React のコンポーネントの単体テストなどを行っており、サーバー側では RSpec, factory_girl, vcr などのライブラリを使ったモデル、コントローラ、API のテストを書いています。それらをプルリクごとにCIでテストすることで、バグやレグレッションの発生を防いでいます。
また、エコシステムに乗った開発を実現するために、フロントエンドの環境も React v15.5 (2017年4月17日現在) など、利用するライブラリは常に新バージョンへ追随することに取り組んでいます。サーバーサイドもRuby2.3, Rails5系 を採用しています。
常に変化していく環境の中で、情報のキャッチアップや実践に日々取り組んでいます。このような技術や取り組みに興味や関心がある方は大歓迎です。
ビジョンやこの新サービスに少しでも興味を持たれた方、まずはお話しませんか。私たちはあなたのジョインをお待ちしております。