実際に現在Varealで行なっている開発についてご紹介します。
アジャイル型開発を採用
Varealでは、Ruby on Railsでのアジャイル型開発を標準開発スタイルとして採用しています。
アジャイル型での開発は、ウォーターフォール型と比較して以下のような特徴があり、「できあがったシステムが想定と大幅に異なる」という状況を未然に防ぐことができます。
- 素早く「動く」システムを開発できる
- 実際に操作可能な「動く」システムを素早く開発ができ、ご確認が早い段階で可能なため、ご要望に沿って無駄なく開発を進めることができます。
- 要件の変更に対し柔軟性に対応できる
- 単体テストを自動化スクリプトによって行う文化のあるRubyでは、要件の変更に強いアプリケーションの開発が可能です。
- 少人数でも大規模な開発が可能
柔軟な変化が可能 - 一人ひとりの生産性が高いRuby on Railsでの開発であれば、少人数の優秀なエンジニアたちにより大規模な開発が可能です。
- 開発が少ないドキュメントで済む
- Rubyはソースコードの可読性が高い上に少ない行数で多くのことを実現でき、またRuby on Railsでは「Rails way」といわれる定石に従い開発するためシステム設計の基盤については多く記述する必要がないため、比較的少ないドキュメントの作成量で済みます。
- 新技術をすぐに導入することができ、
常に最新にアップデート可能 - Ruby on RailsはとてもメジャーなWeb開発フレームワークであるため、様々な新技術に対応する関連ライブラリが豊富に作成され、開発も活発であり、新技術をすぐに試すことができます。
- ベースが既にできたフレームワークなので
実装に集中できる - 重要なセキュリティ対策やDBへの抽象化されたアクセス方法の提供など、本来であれば開発の難しいアプリケーション基盤の部分を優れたフレームワークが実現してくれているため、開発者はアプリケーションにとって本質的に重要な部分の開発に集中でき、開発効率を高めることができます。
開発環境について
- Gitリポジトリ
- Github/Gitlabで管理しています。
- プロジェクト管理
- プロジェクトやお客様のご要望に応じ、Github / GitLab issue /Backlog / Redmineなどで管理を行います。
- Rails/Rubyのバージョン
- Rbenvによりバージョン管理を行い、既存のシステムは指定に沿って対応。新規案件の場合はお客様のご要望や使用GEMなどの互換性を考慮した上で最新安定版を使用いたします。
- Gitブランチの運用
- 原則としてgit-flowに準拠します。
- 統合開発環境
- RubyMineが推奨されています。
- CIサーバー
- 主にGitLab CIを活用し、自動テストとデプロイを行っています。
- コミュニケーションツール
- Slack、Skype、Chatwork、メーリングリストやRedmineなどお客様の環境も考慮したコミュニケーションツールを使用します。
- DBMS
- プロジェクトによりますが、主にMySQLまたはPostgreSQLを使用しています。
- サーバ環境
- 多くの場合Dockerを利用し、開発環境・本番環境ともにAWS上に構築します。プロジェクトによってはオンプレミスサーバを含めた他の方法を採用することもあります。
- コーディングスタイル
- Ruby on Railsのコーディングスタイルに準拠します。Slimやhamlなど時間短縮のために使用する場合もあります。
開発においての経験技術
フロントエンド
React, AngularJS, VueJS, jQuery, Typescript,Webpack, Babel, Bootstrap, haml, AndroidOS, iOS
バックエンド/サーバーサイド
Ruby(Ruby on Rails 3-5 / Sinatra) / C#(.NET), VB(.NET, 6)、C++, sh, nodejs
ミドルウェア
MySQL, PostgreSQL(PostGIS), SQLServer, Amazon Aurora, Redis, MongoDB, Neo4j
外部サービス
OpenID, SendGrid(SMTP/WebAPI), Apple/Android Push Notification, AWS(EC2, S3, Aurora, ELB,…), GCP, Azure, Paypal, Freee(WebAPI), Veritrans(MDK)…
テスト
RSpec(factory-bot, model, controller,feature), turnip, testCafe
開発用GEM
rubocop, rails-erd, seed_fu, pry-byebug, ruby-prof, webmock, web-console, guard, annotate, rack-mini-profiler…
開発環境/デブロイ
Docker, Vagrant, VirtualBox, Chef, Itamae, Capistrano
プロジェクト管理
Git(Github/Gitlab/Bitbucket), SVN, ITS(Backlog/Redmine/JIRA/Github)
Vareal開発チームの特徴

サーバサイドはRubyでの開発に特化しています
Varealは創業から10年以上、Rubyに特化して受託開発を行ってまいりました。
Ruby / Ruby on Rails についてさらに詳しい説明はこちらをご覧ください。
フルスタックエンジニア思考と少数精鋭での開発
無駄なコミュニケーションが不要なため、効率的に開発を進めることができます。


社内において活発にナレッジの共有が行われている
スタートアップおよびフルリモート案件を多く手がけており、社内において活発にナレッジの共有が行われています。
Vareal開発チーム編成
基本的には2名〜複数名のチームでご支援させて頂くラボ型でのプロジェクト参加となります。
1名からでも可能な場合もございますのでご相談ください。
企画から開発までワンストップ
弊社のRuby on Rails開発チームはエンジニアだけでなく営業・マーケティング担当者・デザイナーが一丸となってワンストップでプロジェクトを進めてまいります。それぞれの専門分野を熟知したスタッフが社内で連携を組んで作業を行うので、開発スピードが速く、意思疎通もスムーズです。
状況に応じて、こまめに打ち合わせを行い、各部門のリーダーが最適なご提案をさせていただきます。