セプテーニ・オリジナルのCTOが語る!開発言語にScalaを採用した理由とはScalaセプテーニ・オリジナルのCTOが語る!開発言語にScalaを採用した理由とは株式会社セプテーニ・オリジナルでCTOをやられている杉谷保幸さんへのインタビュー。広告支援事業とGANMA!の開発背景、Scalaを採用した理由、社外での取り組みについて紹介。Scalaという言語の良さについて語ってもらっています。[テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。今回は、全社でScalaの導入を進める株式会社セプテーニ・オリジナルとコミックスマート株式会社のCTOとして働かれている杉谷保幸さんにお話を伺いました。いくつかの事業を立ち上げる上でScalaという言語を採用した背景、社内の教育制度や文化について語ってもらっています。Scalaに興味を持っている方やこれからScalaを始めようと考えている方は、必見のインタビューでしょう。――最初に、自己紹介をお願いします。株式会社セプテーニ・オリジナルとコミックスマート株式会社のCTOを務めております杉谷と申します。どちらもセプテーニグループの会社で、Webサービスの企画、開発や、マンガ事業を手掛けており、私はそれぞれの会社の開発責任者という立場です。この会社に入ったときはエクゼクティブエンジニアという立場だったのですが、最初のミッションはコミックスマートのマンガ配信サービス「GANMA!」を成功させることでした。2つ目は、セプテーニ・オリジナルの開発文化を作るというミッションを任され、やること自体は今も昔も変わっていません。――今、何人ぐらいのエンジニアの方が働いていらっしゃいますか?日本とベトナムで、それぞれ60人ぐらいです。――言語は何を使って開発されているのでしょうか?ほぼ100%Scalaを使っています。ドメイン駆動設計(DDD)という手法も取り入れており、プロジェクトの運営スタイルとしては、スクラムという開発手法を採用しています。僕が入社する前は、PHPで作っていましたが、コードの汚さや保守性の甘さが課題として残っていました。そこでまず初めに、開発体制の整備を行うことにしました。具体的には、前職で当時流行っていたScalaとドメイン駆動設計を両方持ち込みました。テストを書くという文化もまだなかったので導入しました。コードレビューの文化も育っていなかったので、Confluence、JIRA、Stash(現在はBitbucket)を導入し、コードレビューやドキュメントの集め方、タスクの進捗などを整えられるようにした上で、スクラムという手法を普及させていきました。Scalaを使う良さとは――新しくScalaのエンジニアも採用していたのですか?当時は、そもそもScalaエンジニア自体がほとんどいなかったので、既存のエンジニアを教育してプロジェクトを進めました。――Scalaを導入するタイミングに苦労などは無かったですか?最初のミッションであった「GANMA!」の開発に関しては、問題は特にありませんでした。サーバもScalaでできていますし、AndroidアプリもScalaでできているくらいです。新しいプロダクトを作る場合は、Scalaで開発できるように、まず「GANMA!」事業で基礎を学んだ後、Scalaで新プロダクトを作るところから始めていき、そこから株分けしていき導入を進めていきました。――教育は、どのような形でされているのですか?まずは、Scalaに慣れるためにTDD研修で使われるような身近な課題を元にテストを書きつつ、Scalaを書き始めました。Frameworkを使って掲示板を作ってみる、そして、ドメイン駆動設計の本を読んだあとで、それをドメイン駆動設計で書き直してみるというのを1人あたりレビュアー5人で育てるという体制を敷いています。中途入社で入ってきた方の研修プログラムの充実とフォローの厚さに関しては定評をいただいていまして、満足度が高いですね。――Scalaを使う上でのメリットはなんですか?慣れたあとで一番楽な言語はScalaだと思います。色んな書き方ができて、大抵のことは簡潔に表現ができるため、どういう風に書けばいいのかなと考える時間も短縮できますし、確認するのも楽です。きれいなコードを維持するのであればPHPは非常に難しいです。JavaやPHPはちょっとしたことを確認するにもずらずらっと書かないといけない。読むのも書くのも大変ですが、Scalaであれば型もありますしエディタ、IDEの支援もよく利くので、とても楽だというのが最大の理由です。――教育の制度や働き方は、社内・社外においてどのような形になっていますか。株式会社セプテーニ・オリジナルは、もともとは株式会社セプテーニの中の開発部門を、エンジニアにとって働きやすい環境を作るために2014年1月に分社化しました。エンジニアというのは、朝何時に来て何時に帰るというものではなくて、目標地点を決めてここまでやったらOKという方がパフォーマンスを最大限に発揮できると思ったので、まず勤務体系を変えました。先ほど紹介したスクラムというのは、1週間や2週間という区切りでやることを決めた上で仕事に入り、日々確認をしながら最後にできたかできないかということを確認するやり方です。どこまでやるべきかというのがはっきりしているため、裁量労働制と相性がいいので裁量労働制もスクラムも導入しました。――仕事をする時間帯や働き方はどう工夫されているのですか?僕は9時ぐらいに来ていますが、遅めの人もいれば早めの人もいます。お昼頃にはだいたい揃っていますね。スクラムに関しては、タスクに取り掛かる際にどういった作業をするのか、1時間とか30分単位で決めます。最初に1日2日まるごと検討して、残りの時間で進めるというやり方を採用しています。1日2日かけて検討するのでなかなか大変なのですが、それでも凄く安定して速度が出ていて、かつストレスなく実行できているので、優れた手法だと思います。日々の進捗では、「やったこと」「やること」「気付いたこと」を共有しながらやっていきますし、できて終わりではなく、レビューやデモで実際に確認できる状況を作っているのも特徴です。他の人が詰まっていたら助けてあげるし、自分が詰まっていたら助けを求めるという体制をとっています。――その仕事の進め方は、最初からそのように行っていたのですか?スクラム自体は「GANMA!」をリリースしたあとから導入をしていきました。初期のリリースまでは、走りきる形でいったのですが、その後はプロジェクトの動きを把握できるスクラムを持ち込みました。当初は、まだ本を参考に我流でやっていたので、普及しきらないといった課題も出てきたのですが、トレーナーの方に来て頂いたり研修をしたりして、より源流に近いスクラムに移行していったのがここ最近の話ですね。Scalaを普及させるために行っている活動とは――社内・社外でのそれぞれの取り組みについて教えてください。チャットワークに勤めている加藤潤一さんと麻植泰輔さんにアドバイザーとして入っていただいて、加えて僕を含めた社内の2人、合わせて4人で社内のすべてのコードを確認しています。いうことをやることによって、Scalaの変な書き方や不効率な書き方を直したり、間違ったDDDなどを防いだりしています。DDD方面であれば加藤さんが確認してくれますし、Scalaであれば麻植さんが「こういう良い書き方があるよ」といった形で教えてもらっています。新しくチームを作ったときはやっぱりレビューをするにも人数も少ないですし、経験値も足りなくて変なアーキテクチャが入ってしまう余地があるのですが、それを防いでいるというのもScalaを普及させるためには強力なものでした。社外での取り組みでは、最も力を入れているのは「ScalaMatsuri」へのスポンサーの出展です。当社が手掛ける広告運用最適ツールは、技術的には面白いのですが、対外的な知名度もないし、ぱっと見て面白さが分からないので、ScalaMatsuriでは、色々なScalaの技術エントリを載せたものを製本して配布をしたり、CM等を出したりして知名度の向上を図っています。――イベントにはどういう人が参加しているんですか?Scalaに興味がある、もしくはちゃんとやってみたいという人が多いです。多いのは、SIerの方で比較的意識が高くて「ちゃんとやりたい、テストも書きたい」と思っている方ですね。Scalaがいいのかメリットをちゃんと把握していて、正しいエンジニアリングをやりたいという方が多く、実際にイベントがきっかけで採用する人もいます。入社後は全員問題無くScala等を習得できていますし、活躍しています。従来以上に力を発揮できるようになる分、収入もグッと増える方が多いです。採用する上での大事なポイント――採用する上で重要視しているポイントなどはありますか?真面目にエンジニアリングをすることに関して誇りを持ちたい、エンジニアとしてプロの仕事をしたいというところを重視しています。Scalaが単に流行っているからではなく、どこがいいのかとか何が特徴なのか、その特徴はなぜそういったことでできているのかを分かることが大事だと思っています。いろんな情報に対してアンテナを張っているか、日頃から鍛錬をしているか、などのエンジニアとしての姿勢をよく見ていますね。――他にScalaの普及活動として取り組みをされているものはありますか?今回の「Scala転職支援コース」の企画ですね。僕はもともと前職から流行っていたものを拾ってきて、いろんな方の協力を得た上で色々やっているのですが、あまりアウトプットするところまでできていません。何かライブラリを公開するといったScala界に貢献するようなことがまだできていないのです。今回の企画に関してはScala界に貢献をしたい、Scalaをやりたいという人の力になればいいなという思いが強く込められています。Scala自体は、使い勝手のいい言語なので、もっと普及して欲しいと思いますね!――元々Scalaに触ったことがない人でも習得は問題ないのでしょうか?プログラムをしたいかしたくないか、きれいに書きたいかと思えるか次第ですね。SIer出身であろうとBtoC系からであろうと、自分からプログラムを学ぶという姿勢があれば関係ないと思っています。チュートリアルやトレーニングプログラムを手厚くやったあとで実践をやれば身につくので、Scalaだからといって怖気づく必要はないです。――最後に、Scalaに興味を持っている人や、またこれから学習しようと思っている方に向けて何かメッセージをお願いします。誤解されていることで、テストを書いたりレビューをしたりすると、「そんなことをやると遅くなるのではないか」と思われていることがあるのですが、そんなことは全然なく、ちゃんとプロの仕事をしたいのであれば、テストなり言語なり使う道具、全てにおいてちゃんと選ぶべきだと思っています。少なくとも我々はそこに価値を感じていて、成果が出ている自信もあるので、真面目にエンジニアリングをやりたい人と一緒に働きたいと思います。インタビューは以上です。杉谷さん、貴重なお話をありがとうございました。TechAcademyでは、Scalaオンライン講座を開催しています。短期間でScalaの技術を磨きたい、正しいエンジニアリングスキルを身につけたいと思っている方はぜひご覧ください。これから働く上で役に立つ知識を身につけられるはずです。今回は、Scalaでoptionを使う方法を解説します。Scalaについてそもそもよく分からないという方は、Scalaとは何なのか解説した記事をまずご覧...Scala今注目されている!関数型プログラミングとは【初心者向け】この記事では、関数型プログラミングとは何なのか、解説しています。関数型言語は、効率よく開発できる言語として採用している企業も増えてきています。今回は、Scalaでfor文を使う方法について解説します。今回は、入門向けScalaの学習サイト10選をご紹介します。今回は、Scalaでarrayを使う方法を解説します。配列を扱う上で大事な知識なので、実際に書きながら理解していきましょう。今回は、Scalaを習得したい人におすすめの本10選を紹介します。これからScalaを学びたいと思っている人は、ぜひ一冊持っておくと良いでしょう。最近、スタートアップ企業でもWebデザイン、特にUI/UXを強化する流れが広まりつつあります。Programを開始しました。デザインの支援といっても、単純に色・形・バランスなどのビジュアルデザインだけの話ではないようです。Fellowに就任した藤原由翼氏にお話を伺いました。今スタートアップ企業・事業開発に求められるデザインの考え方について聞いています。Designerとして、様々なサービスのリニューアルや新規立ち上げプロジェクトを担当。主な実績はUI関連特許の発明やグッドデザイン賞2012の受賞など。Fellowとして活動を開始している。Fellowが支援先のスタートアップ企業のデザインに関する課題解決をサポートするプログラムです。人件費の観点からデザイナーをチームに迎えられていないことが多いというのが現状です。このような悩みは、私も前職のときから相談を受けることがよくありました。Programの発表に至りました。基本的にデザイン面で困っていることがあれば何でも相談できるような体制にしてあります。相談内容は大きなものから小さなものまで様々です。ちなみにこのプログラムとも関連した起業家とデザイナーの理想の関係というイベントも開催します。Weekendで出会いました。楽天を退職するにあたって、改めてお会いしに行った際に課題意識を深く共有できたことがきっかけです。自分が貢献する中で更に成長して進化できるイメージを同時に描くことができました。してもデザインに積極的に投資できる企業は一部のように感じています。デザイナーのアウトプットをどのように確認すべきか?といった判断は、起業家やエンジニアだけでは難しい部分があると思います。そのような場合もサポートに入ることで、依頼する側とされる側の関係が上手く回るようにしていきたいと思っています。デザイナーが支持されたものを作るだけで終わってしまっているケースが多々あることです。デザイナーはもっと会社や事業そのものをデザインするつもりで取り組む必要があります。Experienceという資料です。最下層にはビジネルモデルの根幹となる要素が記載されています。私はこれをデザインの深度と呼んでいます。対応できる範囲や知識の広さも大事ですが、より根幹にある深いものからデザインした方が良い。そもそもデザインという単語の語源”Designare”には、「計画し、設計すること」という概念が根底にあるんですよ。サービス設計に関する専門知識はもちろんですが、ファシリテーション能力が最も役に立つと考えています。何をゴールに設定すれば前に進むのかを常に考え、必要に応じてファシリテートして形にすることを意識していました。その上でどのように関わるのがベストかを適宜判断する力は最大限活かすべきだと感じています。デザイン力は訓練次第で伸びるはずです。常に「なぜ?」とその理由を自分に問いかけて解析する習慣を身につけることから始めるのが良いと思います。その状態で専門書に手を出せば論理的に理解ができ、完全に自分のモノにすることができます。論理的に考えることができ、アウトプットの品質をコントロールできるようになると思います。インタビューは以上です。スタートアップ企業だけでなく、Webデザイン全体の課題についてもお話いただきました。Railsオンラインブートキャンプを開催しています。最近、スタートアップ企業でもWebデザイン、特にUI/UXを強化する流れが広まりつつあります。Programを開始しました。デザインの支援といっても、単純に色・形・バランスなどのビジュアルデザインだけの話ではないようです。Fellowに就任した藤原由翼氏にお話を伺いました。今スタートアップ企業・事業開発に求められるデザインの考え方について聞いています。Designerとして、様々なサービスのリニューアルや新規立ち上げプロジェクトを担当。主な実績はUI関連特許の発明やグッドデザイン賞2012の受賞など。Fellowとして活動を開始している。Fellowが支援先のスタートアップ企業のデザインに関する課題解決をサポートするプログラムです。人件費の観点からデザイナーをチームに迎えられていないことが多いというのが現状です。このような悩みは、私も前職のときから相談を受けることがよくありました。Programの発表に至りました。基本的にデザイン面で困っていることがあれば何でも相談できるような体制にしてあります。相談内容は大きなものから小さなものまで様々です。ちなみにこのプログラムとも関連した起業家とデザイナーの理想の関係というイベントも開催します。Weekendで出会いました。楽天を退職するにあたって、改めてお会いしに行った際に課題意識を深く共有できたことがきっかけです。自分が貢献する中で更に成長して進化できるイメージを同時に描くことができました。してもデザインに積極的に投資できる企業は一部のように感じています。デザイナーのアウトプットをどのように確認すべきか?といった判断は、起業家やエンジニアだけでは難しい部分があると思います。そのような場合もサポートに入ることで、依頼する側とされる側の関係が上手く回るようにしていきたいと思っています。デザイナーが支持されたものを作るだけで終わってしまっているケースが多々あることです。デザイナーはもっと会社や事業そのものをデザインするつもりで取り組む必要があります。Experienceという資料です。最下層にはビジネルモデルの根幹となる要素が記載されています。私はこれをデザインの深度と呼んでいます。対応できる範囲や知識の広さも大事ですが、より根幹にある深いものからデザインした方が良い。そもそもデザインという単語の語源”Designare”には、「計画し、設計すること」という概念が根底にあるんですよ。サービス設計に関する専門知識はもちろんですが、ファシリテーション能力が最も役に立つと考えています。何をゴールに設定すれば前に進むのかを常に考え、必要に応じてファシリテートして形にすることを意識していました。その上でどのように関わるのがベストかを適宜判断する力は最大限活かすべきだと感じています。デザイン力は訓練次第で伸びるはずです。常に「なぜ?」とその理由を自分に問いかけて解析する習慣を身につけることから始めるのが良いと思います。その状態で専門書に手を出せば論理的に理解ができ、完全に自分のモノにすることができます。論理的に考えることができ、アウトプットの品質をコントロールできるようになると思います。インタビューは以上です。スタートアップ企業だけでなく、Webデザイン全体の課題についてもお話いただきました。Railsオンラインブートキャンプを開催しています。2016が開催されました。Conferenceのイベントレポートを発信していきますので、ぜひご覧ください。ビジネスモデルジェネレーションでは、以下の登壇者によるパネルディスカッションが行われました。自分自身がエンジニアであるなど、テクノロジードリブンなサービスづくり、組織づくりの秘訣について語っています。氏:初期の3年間はエンジニアしかいなかったです。当時は初期からエンジニアにとってハッピーなことが全部ありましたね。その初期にいたエンジニアは、ランサーズ上にエンジニアの方もたくさんいたので、一緒に作りましょうとメルマガを送って、20人くらい応募があってその中から2,3人採用しました。氏:創業者は3人ともエンジニア出身なんですけど、実際にコードを書いてたエンジニアは別にも何人かいました。僕はとにかく最初にいるエンジニアがとても大事だと思ってるんですよね。最初にいるエンジニアのレベルによって全体のレベル感が決まってくるので、今まで自分が会って優秀だと思った人に声をかけたり、Twitterでエンジニア募集!と発信して20人くらいと会ったり、ウノウでエンジニアだった人を採用したという感じですね。氏:最初は完全に一人でやっていたんですが、途中クラスメイトにアルバイト料を払いながら手伝ってもらいました。その後やっていく中で優秀な人に株を渡して2人で始めました。その後もいろんな人に声をかけながら6人くらいでプログラムを書いていました。氏:ランサーズにおいて優秀なエンジニアというのは、サービス愛がある人ですね。具体的にはユーザーへの価値を第一に考えてプログラミングはその手段だと考えられる人だと思ってます。最近、開発合宿をしてそれをすごい感じたんですけど、「好きなもの作っていいよ」って言うと、ランサーズで明日便利になるものを作ってくれたりしたんですよね。氏:創業者の2人を例にすると、一人はカバレッジが広くて新しいものが出たらとにかく触ってみるという人で、初めて会った時に只者じゃないなと感じました。一人は、どちらかというと深く知っているタイプ。コンピュータってなんで動くんですか?っていうのを知っているタイプなんですけど、元々経営経験もあったのでコミュニケーション能力も高かったエンジニアですね。氏:異常なまでの好奇心がある人だと思いますね。スタートアップの時期ってやる手段が決まってない中でやらなければならない事が多いと思うんですよね。これはエンジニアに限らないんですけど、出来ないけど約束して物事に取り組む人っていうのがスタートアップにおいては重要だと思います。氏:実は一人目の社員は弟なんですよ。彼はデザイナーだったんですけど、当時外注していた先のエンジニアが逃げたって言われてどうしようっていう時にPHPの本を3冊買ってあげて弟をエンジニアにさせました。おすすめはしませんが。今は開発のリーダー的なポジションにいますよ。氏:メルカリはそもそもいないですね。逆に元エンジニアだったり元デザイナーで企画をしている人が多いですね。氏:昔は未経験でも採用せざるを得なかったですけど、今はしてないですね。運用の現場がどんどん自動化されているので、サーバー設置できますくらいだと仕事がなくなっているんですよね。今まではオペレーションだけ出来る人でも仕事があったわけですけど、今後はプログラミングもできないと厳しいと思っているので、経験者を採用するようになりました。氏:メルカリは3年位前に始めたんですけど、思っていたよりシェアリングエコノミーの世界が早く来てる感覚がありますね。デバイスが変わったことによってCtoCのモデル、つまり個人対個人が繋がりやすくなってシェアリングエコノミーの世界がいち早く普及してるなと思いますね。氏:さくらは96年に創業してるのでGoogleより古いんですけど、Webがすごい広がるなと思ってたんですよ。当時、自分で立ち上げたサーバーが秋葉原にあるインターネット体験コーナーでURLを打つと何かレスポンスが返ってきまして。その時の感動もあってWebが世界を繋ぐなと感じました。それまではインターネットは単なるテクノロジーとしか捉えてなかったんですけど、インターネットとWebの繋がりはすごいなと思いまして。n対nではなくて、n対サーバー対nとして今後20~30年くらいは無くならないだろうと思って創業しましたね。氏:2000年くらいにインターネットに出会って、それがランサーズの創業の背景でもあるんですよ。その時個人サイトを作っていたら、知らない人から同じものを作って欲しいと言われて作ったら5万貰えたんですよね。これをプラットフォームにしたら働き方変わるぜって思って立ち上げたんですけど、最初は「そんなリスクある働き方誰がするんですか」って言われ続けて、最初3年くらいは全然使ってもらえなかったです。この2,3年でシェアリングエコノミーの普及もあって働き方も変わってきたなと肌感覚で感じますね。氏:この会社ってどういう価値基準で意思決定していくんだっけという点に関しては、ランサーズウェイというのを本にしていて全社で指針にしています。あとエンジニアに関しては、ランサーズでは価値が高いけど市場価値は低いという人にしたくないと思っているので、ランサーズにいることでエンジニアとしての市場価値も高くなるようなことを意識してますね。実際に他の言語触ってもらったりはありますね。氏:エンジニア出身の人が多いので、オープンな感じです。platformを使っていたりと、今後もいろんな技術を使える会社にしていきたいとは思ってます。氏:15年以上働いてる人もいれば、ここ5年以内に入った人もいるんですよね。いろんな人が同じ価値観で働いてもらうために新しい人をどんどん採用してチームビルディングが必要なんだと認識させるようにしています。氏:勝手にSlackが導入されたりとかはあったんですが、最近面白いなと思ったのは勤怠管理を社内のWi-Fiに接続したら自動で出勤するシステムを開発してる人はいましたね。氏:Slackを受け入れられるかっていう文化はインターネットのリテラシーを判断する材料になりますよね。最後に、エンジニアにとってうちにはこんな働きやすい環境があるっていうのがあれば教えてください。氏:海外でチャレンジングにやりたい人には良い環境だと思います。半年に一回くらいはアメリカに行ってもらってますし、もっと多く行ってる人もいます。あと現地でもカスタマーサポートを積極的に採用しているのでビザが出しやすいとは感じます。氏:ランサーズでは2つあると思っていて、自分たちが働き方を変えるんだと目指しているので在宅ワークも可能にしています。あとはユーザーと距離がすごい近いですね。ランサーズのユーザーの方に頻繁に会社に来てもらったり直接会って反応をもらう機会は多いと思ってます。氏:さくららしい所でいくと自社サービスが無料で使えるところですね。すごい人なんかはラックとか借りてるので。有給休暇を取ることを事前に言うとお小遣いがもらえるなんていう制度があったりします。以上、ビジネスモデルジェネレーションのパネルディスカッションでした。エンジニアにとってはもちろん、エンジニア以外の方にも役に立つセッションになったのではないでしょうか。イベントレポート【2016年最新版】プログラミング言語人気ランキングを調べてみた!このランキングはアメリカの産業調査会社RedMonkが発表したもので、GitHubの利用状況と、プログラミングのQ&AサイトStackOverflowにおける会話の動向によってランキングをつけているそうです。国内の記事では紹介されていませんが、その後、更新されたランキングがRedMonkのサイトで公開されていたので最新のランキングと各言語のランキングの変化をまとめてみました。完璧なランキングシステムというものは存在しませんが、今後勉強するプログラミング言語の参考にしてみてください。最新の2016年1月のランキングはこのようになっています。同じランキングは2014年6月、2015年1月、その次の2015年6月のデータも発表されているので、ランキングの移り変わりを表にまとめてみました。プログラミング言語は最新のランキング順に並べてあります。ここ半年で特に大きな変化はありませんが、Swiftはオープンソースになってからより人気が伸びてきているようです。JavaScriptも常に1位ですが、JavaScript単体のトレンドは激しく移り変わっています。プログラミング言語のランキングは他にもあります。PCIというプログラミング言語ランキングを公開しています。PCIは、検索エンジンの検索結果から、プログラミング言語がどれだけ話題になっているかをインデックス化してランキングにしているそうです。こちらの結果では、2016年2月のランキングで、Javaが1位、C言語が2位、C++が3位となっています。indexというランキングもあります。こちらは、プログラミング言語のチュートリアルが検索された回数からランキングをつけているそうです。こちらの結果では、2016年2月のランキングで、Javaが1位、Pythonが2位、PHPが3位となっています。今すぐに役立つというデータではありませんが、ぜひ今後の参考にしてみてください。最新のデータが更新された際は今後も紹介していく予定です。プログラミングを勉強したいという方は、プログラミング入門書の記事も参考にしてみてください。プログラミング情報サイト「プロスタ」にアイデアベースで学習する言語について寄稿しました。こちらも合わせてご覧ください。[お知らせ]TechAcademyでは初心者でも8週間でエンジニアになれるオンラインブートキャンプを開催しています。各自にパーソナルメンターがつきます。2016が開催されました。Conferenceのイベントレポートを発信していますので、ぜひご覧ください。「チーム開発を支える技術」では、以下の登壇者の方々が会場からの質問を元にパネルディスカッションを行いました。氏:技術相談窓口というものを設置していて、エンジニアが毎日担当で入れ替わるような形をとっています。基本は誰かが質問したらその人が答えるという仕組みにしていますね。氏:こういうフローで質問してくださいという風にすると人間関係が阻害されてしまいそうなので、個人個人の信頼関係で各々やってもらっています。氏:今は特定の人に負荷がかかっているような気がします。質問しやすいって思われてる人に集中しちゃって、その人も性格が良いので何でも答えるという雰囲気ですね。氏:今はエンジニア全員でも6人という人数なので、特に階層などはないですね。今後人が増えても部門で分けるだけで、階層はないと思っています。氏:現在エンジニア14名、デザイナー4名でやっているんですが、チームリーダーという役割が出来てから変わった感じがしますね。今後については、ちょっとまだ考えてないですね。氏:予算の中であればその予算で使うという感じですね。自分の好きなツールを使いたい人もいれば社内で統一して使いたいという人もいるので、そこは考える必要があると思ってます。Driveにまとめたりしていますからね。スプレッドシートで良いのは、エンジニア以外の人でも使いやすいところですかね。氏:スプレッドシートは便利ですよね。Scriptで連携できたりするので。うちでは、エンジニアの一人が使ってみて便利だったら全体で使おうみたいな感じで選んでますね。氏:今はJIRAを使っています。これがベストだとは思っていないですけど、いろいろ使っていく中で決めているような感じです。氏:高価なツールはみんなで決めるようにしています。このツールの選定というのはエンジニア基準で行うべきだと思いますね。以前は管理部門が選定していたんですが、どれを使うかということで争いが生まれたのでエンジニアが権限を持つことが大事だと思います。氏:初期のころは直接会って口説いてました。相手一人に対して社員全員で行くみたいなこともありましたね。最近では紹介会社からでも優秀な人が入ってくれたりしていますよ。氏:自分でどんどんやっていくような人を採用したいですね。自分もまだ入って半年くらいなんですけど、みんな本当に優秀だなと感じます。氏:今まではほとんど紹介での採用ですね。イケてる人の周りにはイケてる人がいるので、そのイケてる人に紹介してもらったりしています。採用基準については、お互いに高め合えるかどうかですね。人が入るたびにモチベーションがどんどん高くなるような組織が理想だと思うので。以上、「チーム開発を支える技術」でのパネルディスカッションでした。エンジニアはもちろん、営業や企画の人にも役立つセッションになったのではないでしょうか。Railsを使っている企業が多い理由とは!本記事は、キャリアに特化したQ&Aサービス「JobQ」との連載企画になります。毎週月曜日に就職や転職など、あるテーマに沿って紹介していくシリーズです。Railsを使っているベンチャー企業とは」というテーマで紹介していきます。前回の「プログラミング未経験の文系学生でもエンジニアになれる!」も合わせてご覧ください。あるベンチャー企業でエンジニアとしてインターンをしている学生です。Railsを勉強した後、今の会社にお世話になっています。入社して2ヶ月になりますが、任される仕事も限られており、あまり成長を実感できていません。社会人の先輩方から教えていただきたいと思い投稿致しました。代表的なのはクックパッドでしょう。世界的にみてもRailsを使ったかなり大規模な開発例ですし、OSSへの貢献度も高いです。以下のスライドなどがイメージしやすいです。