始めまして。ゼネット新人の高澤です。
現在、私はJava・JDBC・Servletを使ったWebアプリケーション開発の研修を受けています。研修の中でJavaの特徴であるオブジェクト指向の良さを感じながらも、他の言語との違いも知りたいと思いました。
そこで、ゼネットの強みであるRuby言語の開発業務について先輩社員にインタビューした内容を紹介したいと思います。
目次
Rubyの特徴について
(高澤)Rubyの特徴について教えてください。
(西島さん)私がRubyという言語が好きな理由でもあるんですが、「エンジニアが書いていて楽しい」ということを言語の開発コンセプトにしているという点です。一般的に言語を開発するときには並行処理がしやすいとか、型が厳格でバグが少なくなるとか、処理が高速であるとか、そういったことを考えると思いますがコードを書く楽しさを大切にしている点が最大の特徴だと思います。「好きこそものの上手なれ」という言葉があるように書いていて楽しい言語を使うことでプログラミングの能力が上達しやすいと感じますし、コミュニティも大きなものになっていっていると思います。
(高澤)プログラムを書いて動くシステムができあがったときがとても楽しく、次に挑戦してみようと意欲が湧くのですが、書くことが苦痛で挫折してしまうこともありますよね。その点で書いているときも楽しくあろうとしているRubyは素晴らしく興味を引きますね。
(西島さん)また、RubyというとRuby on RailsというWEBアプリケーション開発のフレームワークで効率的に開発ができるのも特徴です。このフレームワークを使い、規約に基づいてソースコードを書くことで記述量を減らすことができます。
(高澤)プログラマにとって、記述量の少ないコードで開発できるのはとても魅力的ですね!
(西島さん)またソースコードもシンプルに書きやすいため、他の人が読んでも分かりやすく保守性の高いプログラムが開発できます。
(高澤)保守性の高いプログラムの重要性は研修で痛いほど感じるため、これも大きな魅力の1つと思います。
(西島さん)最後にアジャイルと親和性が高いことも言えます。Railsですぐに動くアプリケーションが作ってみては、お客様のフィードバックを受け変更してという風にアイディアをすぐに形できます。トレンドや環境の変化が激しい世の中で、システムもそれに合わせて変化が必要なので時代に沿っている開発スタイルを実現しやすいです。
(高澤)なるほど、技術の変化や競争が激しいIT業界でマッチした言語なのですね。
Rubyの開発業務について
(高澤)Rubyでの開発期間はどのくらいでしょうか。
(西島さん)案件にもよりますが、およそ2か月~1年でまとまったシステムを作ってそれを繰り返す形です。作って終わりではなく、保守業務も行いながら開発を進めていくので、関係の長いお客様とは10年ほど続いています。
(高澤)お仕事ではどのような業種のお客様がいらっしゃいますか。
(西島さん)業種は公共、商社、保険、アミューズメントや研修など様々です。ですが、どのお客様も「とにかくアイディアを形にしたい」「システムを作るというよりはビジネスを成長させていきたい」という思いが共通していると思います。
(高澤)どのようにアプリ開発をすることが多いのでしょうか。
(西島さん)時代の流れや環境に合わせてシステムをお客様とともに形にしていくような開発が多いです。開発は私たちのようなエンジニアだけではなくお客様と一緒にビジネスを考え、形にしていくものだと思っています。「ただシステムを納品すればいい」という考え方ではなくお客様のビジネスが軌道にのってもらうことにやりがいを感じます。
おわりに
お客様のやりたいことやビジネスを成功させるために、変化が激しいIT業界に合わせRubyとアジャイルを用いてお客様の笑顔につなげていくという思いを強く感じました。
自分は大学でアジャイル開発をした経験があるのですが、Rubyはアジャイル開発と親和性が高いという一面を発見することができたことやお客様のビジネスの成功につなげやすい言語であることにとても興味を持ちました。
また、書くことの楽しさを大切にしていることや、フレームワークを用いて少ない記述量で開発可能という特徴にも魅力を感じ、今後Rubyを習得していきたいなと思いました。