ランサーズ等のサービスを開発・運用する中で得た知識やノウハウを紹介しています。

thumbnail

Labels:  DevOps 投稿者:mako

日々の開発について

ランサーズ Advent Calendar 2016 6日目の記事です。
エンジニアのmakoです。
入社して半年経ちランサーズの開発で使用している技術について書きたいと思います。
業界として最近では使われることも多い技術や手法ですが入社前まではほとんど経験がなかったもので、ランサーズの開発は私にとって初めて実践することばかりでした。

 

基本的なことばかりですが、ざっくりとまとめてみました。

 

git

ソースコードバージョン管理です。
ブランチを切ったりマージをしたり複数のリポジトリで開発を行うことができるのでsubversionに比べて学習コストは高いと思いますが、理解できれば開発はしやすいです。
  • ローカルにリポジトリが持てる。
    • オフラインでも開発が可能
    • リモートにまとめてpushできる。
  • 簡単にブランチが切れる。
    • 複数人で同時に開発ができる
  • 履歴や差分が見やすい

スクラム開発

アジャイル開発の手法の一つです。
協力して問題改善に取り組み柔軟な開発がしやすいです。
  • エンジニアだけでなくプロダクトオーナーやスクラムマスターと連携し柔軟な開発ができる。
  • ストーリーポイントを見積もり、ベロシティを図りながらスケジュールの精度を上げていく。
  • 工数の見積もりの制度が上がる。
  • 一定期間のスプリントごとに振り返りを行い、問題点を確認し改善を繰り返す。

コードレビュー

お互いのコードをレビューすることで以下のことが期待できます。
・品質及びスキルの向上
・コードの属人性排除及びナレッジの共有

 

レビューを依頼する側(レビューイ)

レビューを受けることで、新しい観点で開発を考えることができたりプロダクトの品質を向上することができます。
  • ここでは何をしたいのかゴールを明確にする
  • どこの何をレビューしてもらいたいか伝える
  • レビュアーが見やすいようにコミットは細かく分ける
  • どうしてそのコードにしたのか目的や意図、ビジョンを明確にする

レビューをする側(レビュアー)

レビューをするために他の人のコードを読むことで、技術的学びや仕様や作りを把握することができます。
  • 仕様や目的に対して適した実装をしているか確認する
  • 仕様や実装で疑問に思った点を聞く
  • コーディング規約に沿っているか、全体的に他箇所との整合性があっているか確認する
  • ロジックに漏れがないか確認する

 まとめ

ざっくりまとめてみましたが、ここで書いたことだけではなく他にも開発に応じて様々な技術が使われています。

目的に応じて新しい技術や手法にも取り組んでいきたいと思います。

ランサーズではサービスを成長させてくれるエンジニア、デザイナーを募集しています!
ご興味がある方は、以下URLよりご応募ください。


【中途採用】
サービスリードエンジニア
テックリード(アーキテクト)
フロントエンドエンジニア
サーバーサイドエンジニア
業務エンジニア(社内システム基盤・基幹システム)

【インターン・学生バイト】
19新卒対象サマーインターン
エンジニアインターン

その他採用情報

関連記事

AWSのスポットインスタンス運用

はじめまして。ランサーズインフラエンジニアの金澤です。 AWSのスポットインスタンスを利用したことはありますか? スポットインスタンスとは、AWSの余剰インスタンスを入札制で提供する仕組みです。 各インスタンスの1時間あたりの料金比較しても、スポットインスタン …

【告知】BASE×Re:Build×Lancersエンジニアイベント

こんにちは! ここ最近の猛暑で洗濯機が壊れたエンジニア広報の宮田です。 本日は、そんな猛暑も吹き飛ばすイベント情報をお伝えいたします! そのイベントとは・・・ レガシーコード改革! UT/CIでWebサービスの技術的負債を解消する取り組み 日時:8月7日(火) …

ランサーズ リリースシステム 〜 Jenkins + Fabrics

こんにちわ。エンジニアの こじま です。 今回は,ランサーズのリリースシステムの紹介をします。 弊社プラットフォームは,1日に多い時は10回以上のコードのリリースを実施します。 ユーザ様によりよいプラットフォームを提供すべく日々,リリースをし改善を実施していま …