VOYAGE GROUP エンジニアブログ

voyagegroup_techのブログ
VOYAGE GROUPエンジニアブログです。

イベント

圧倒的な成長を目指す「Treasure2014」(後編)

こんにちは。システム本部 三浦@hironomiuです。

本エントリーは
圧倒的な成長を目指す「Treasure2014」(前編)
の続編エントリーです。


最終日打上げ
treasure2014-7

8日間の前半戦を終え9/4〜9/12の7日間で行う後半戦では4人1チームのグループ開発を行います。
今年は5チームが1位を目指して最高のサービス目指して開発を行いました。

各チーム紹介

チーム 大文字
しほし、びのー、かみ、けいた
(サポータ せんせい、ゆう@yuu_ito、いっきさん)
treasure2014-12

チーム 720°スゴイ
ちーちゃん、こーき、ふぁいん、たくぼう

(サポータ 三浦@hironomiu、たかゆき@daybysay、大介)
treasure2014-8

チーム アイカレ
はしもと、みっしー、さっさー、わーみー

(サポータ 大山さん、じゅえる@jewel_x12、Hさん)
treasure2014-10

チーム 絶対☆男塾
どんちゃん、どぅーや、さかおす、あかまっくす

(サポータ しもやん@huin、さや@saya_223n、ごっさん)
treasure2014-11

チーム TEA
やんうぇい、がんちゃん、たけし、かぬー

(サポータ あわさん@katz_arc、とっしー@Sion0303、みやしゅー)
treasure2014-9


7日間の後半戦では前半に学んだ技術とアイディアソンで培ったアイディアをフルに用いて全力でサービスの開発を行います。Treasureではただ作りたいものを作るのではなく「価値」のあるもの作りが出来ているものを高く評価するようにしています。そして最終日にプレゼン発表を行い1位から5位までの順位付けを行います。

プレゼン
最終日に行われた各チームのプレゼン資料の抜粋です。全てのチームがプレゼン資料からもしっかりとした「価値」を考えてサービス開発したことが伺えます。

チーム アイカレ
2659
3800


チーム TEA
2435
5503


チーム 絶対☆男塾
2939
4701


チーム 大文字
2535
4602

チーム 720°スゴイ
5708
1725

最終発表までの7日間の風景

アイカレアイディア出し中
IMG_3317

絶対☆男塾アイディア出し中
IMG_3316

720°スゴイ横並び駆動開発
IMG_3321

大文字開発中
IMG_3344

#ajiting中
IMG_3328

TEA徹夜
IMG_3348

たくぼー椅子駆動開発
IMG_3349

絶対☆男塾横並び駆動開発
IMG_3351

720°スゴイランチ
IMG_3357

TEA開発中
IMG_3354


まとめ
Treasure2014の3週間を通して関わった全ての人が圧倒的に成長出来たのではと思っています。
圧倒的な成長に向けて全力で頑張れたからこそ全てのチームが素晴らしい結果で締め括れたと思っています。Treasureのコンセプト『「想像」が「創造」になる。』の通り、自分たちの「想像」する価値のあるサービスを実際に「創造」することができた3週間だったのではないでしょうか。ここで得た仲間や経験を通じて、これからも「未知」なるサービスを「創造」し続け、価値のある素晴らしいもの創りに挑戦し続けて欲しいです。

おまけ
最後までやりきった!!
IMG_3363

圧倒的な成長を目指す「Treasure2014」(前編)

こんにちは。システム本部 三浦@hironomiuです。

VOYAGE GROUPの夏のエンジニアインターン「Treasure2014」が8/25 - 9/12の3週間で行われました。
Treasure2014は前半(座学、ワーク)、後半(グループ開発)でカリキュラムが組まれています。
今回は前半についてお伝えしていこうと思います。

又、本エントリーを見て圧倒的な成長をしたいと思って頂けた学生さんは
11月に大規模サービス構築プログラムSunriseがありますのでエントリーお待ちしてます!!

スケジュール
前半は8/25 - 9/3の8日間で行いました。
(但しTreasure2014の開始2週間前から事前課題でTreasure中に最低限必要となる技術について、みっちり講師陣とQAのやり取りを行います。)

各講義について
1日目
環境構築 講師:三浦@hironomiu


treasure2014-githubvagrant


Treasure2014では出来るだけ実際の開発フローを経験してもらおうと個人開発環境で開発を行い本番環境へデプロイする流れを取ります。その上でGitHubを用いissueベースで開発を行っていきます。

issue -> 開発branch -> push -> pull request -> merge -> 本番デプロイの流れを初日に簡単に倣っていきます。

個人開発環境はVagrant,Puppet,Virtual Boxにて仮想サーバを構築し仮想サーバ内でベースアプリをGitHubリポジトリからcloneし開発出来る状態で臨みます。

2日目
アイディアソン 講師:渥美(@daisuke_atsumi)さん


treasure2014-atsumitreasure2014-atsumi2

Treasureはただ学んだ技術で何かを作るインターンではなく、学んだ技術などを用いて「価値」のあるWebサービスを生み出すこと特に大事にしています。

そこでアイディアソンと言う形で各Treasure生が作るべき「価値」のあるWebサービスのイメージを具現化するトレーニングを開発の前に行います。そしてこの後の技術的な講義ではアイディアソンでイメージしたWebサービスのモック作成からより具現化していく流れで進めていきます。

限られた期間で「価値」のあるWebサービスを生み出すのは相当困難です。しかしアイディアソン後の講義でも常に各Treasure生が考えたアイディアは本当に顧客に対して「価値」のあるWebサービスとして成り立つのだろうかと実装しながら検証していきます。

3 - 7日目
エンジニアインターンとしての肝となるのが3 - 7日目です。

フロントサイド 講師:前田(@brtriver)さん

treasure2014-brtrivertreasure2014-brtriver2

今回の開発はアイディアソンでイメージしたアイディアのモック作りから始める形で進めます。まずWebの概念や仕組みを再確認し、その上でモック作りに入ります。Webアプリケーションを振る舞いの責務と言う観点からフロントサイド、サーバサイドの二面を切り口に解説しサーバー側の実装に左右されない柔軟なフロントサイドを開発すると言う目的で今回はVue.jsを用いデータバインディングについて触れていきます。

treasure2014-brtriver3treasure2014-brtriver4

treasure2014-brtriver5treasure2014-brtriver6



中間課題(個人課題) 評価者:前田(@brtriver)さん

treasure2014-brtriver7treasure2014-brtriver8


中間課題はここまでのフロントサイド(プラス一部のサーバサイド)の講義で学んだ技術を用いて2日目に行ったアイディアソンのアイディアのモック作成か講義中の例題で作ったアプリの更なる改善したモック作成のどちらかを選択し制作物はプレゼンで発表します。


サーバサイド 講師:すずけん(@suzu_v)

treasure2014-suzukentreasure2014-suzuken2

今回のTreasureで用意したサーバサイドベースアプリ(PHP,Slim,Twig,etc)についてコードリーディングを実施し説明していきます。説明も大事ですが自分でOSSのソースを読み解き進める力をここでは養っていきます。

treasure2014-suzuken3treasure2014-suzuken4

今回サーバサイドの役割はフロントサイドからAPIを叩かれJSONを帰すイメージで進めます。そのために必要なAPI,URI設計や更にバックエンドにあるデータ永続やテスト(TDD)についても触れていきます。

treasure2014-suzuken5treasure2014-suzuken6

鬼教官すずけん(@suzu_v)とTDDです!(Let's TDD Bootcamp!)

treasure2014-suzuken7treasure2014-suzuken8
treasure2014-suzuken9treasure2014-suzuken10


8日目
DB 講師:三浦@hironomiu

Treasureではデータの永続化でRDB(MySQL)を用います。事前課題でTreasure生向けにRDBでは必須な技法である正規化について課題を行ってもらいます。その正答を伝え応用を実際に定義したテーブルに対してSQLを用いて様々な問い合わせについて触れていきます。またMySQLのアーキテクチャやRDBMSの機能であるトランザクションなども触れます。

treasure2014-hironomiutreasure2014-hironomiu2


セキュリティ 講師:えび(@co3k)ちゃん

ここまでも相当ヘビーな講義でしたがトリを勤めるのがセキュリティです。Treasure史上最長の講義資料の136ページ!えびちゃんワールドの開始です。

講義は情報セキュリティから始まります。

treasure2014-co3ktreasure2014-co3k2

情報セキュリティを抑えた上でWebセキュリティの概要をまずは俯瞰します。今回は限られた時間内で XSS (含 DOM based XSS)、SQL Injection、CSRF、クリックジャッキングについて触れていきます。

treasure2014-co3k3treasure2014-co3k4

個別のセキュリティ(XSS)について触れていきます。

treasure2014-co3k5treasure2014-co3k6


番外編
ランチ風景とTreasureの総合プロデューサー(Hさん)。

treasure2014-1treasure2014-4


他にもまだまだ書ききれないこともあります。

前半戦はここまでとなります。いかがだったでしょうか?
ここまで学んだことを用いて後半は4人1チームの開発を行います。後半のアウトプットが楽しみですね。後半戦のエントリーをお楽しみに!

Special thanks
各講義中、常にフォローをしてくれた15エンジニア内定者

せんちゃん
わっさん
だっち
ぷろ
ももえちゃん
いなっぺ
ぽくてぃ
さかもっちゃん
ゆきみね

PyCon JP 2014 ジョブフェアのちょっとだけ補足 #pyconjp

9/14(日)に行われたPyCon JP 2014ジョブフェアのパネルディスカッションで登壇してきました @makogaです。

さっそくメディアスポンサーでもあるエンジニアtypeでレポートが公開されました。
とてもコンパクトにまとまっていて素晴らしいですね。

パネルディスカッションということで資料なしでのトークだったので、ちょっとだけ補足したいと思います。

横串の情報共有はSlackが人気
はい、Slack大人気です。ぼくも大好き! 
Slackはbotが簡単に作成できることや、Emojiやアイコンが使えて柔らかい雰囲気を作れるのがいいですね。

プロジェクト単位ではGitHubのissue
プロジェクト管理はチームごとに最適なツールを使っています。
最近はTrelloが人気ですし、結局Redmineに落ち着くチームもあります。

毎日のランチミーティング
あー、私の説明が分かりづらかったですね。
ほとんどのチームがDaily meetingをやってるという話と、ランチ時間に弁当食べながら各チームの事例を紹介する話が混ざったっぽい。。

導入はトップダウンではなく、個人レベルから始まります。徐々に広がって、定着しそうであれば会社として導入するというスタンスです。
これは本当にそのとおりで、GitHub、Slackはまさに徐々に広がって定着しました。

新しい技術の導入提案は、コンテストのような社内イベントとして実施
これは毎回イベントを開催しているわけではなく、最近そういうことをやってみたという話でした。
事例としては、アドテク系のサーバーサイドでボトルネックになっている箇所の性能改善をやろうという話で、チームメンバー各々が業務時間の一部を使ってプロトタイプを開発し、最も評価が高かった技術を採用しました。
検討した言語は、D言語、Scala、Go、Lua、Rustで、前評判どおりGoが勝ちました。Goはえー!


PyCon JPでジョブフェアを行うのは今回が初めてということでしたが、立ち見が出るくらいの大盛況でした。
その後のmeetupでもお話できたので、来年もジョブフェアがあれば参加したいと思います。
関係者のみなさま、ありがとうございました。


[PR]
VOYAGE GROUPには無料シェア会議室 PORT社内バー AJITOがあり、勉強会などに無料で貸し出しています。
さらに期間限定で、5〜10分の企業PRタイムをいただくことで、寿司・ピザスポンサーも行っております。
ご興味ある方は @makoga に気軽にご連絡ください。
 

100万人が使うWebサービスを創造せよ!!大規模サービス構築プログラム「Sunrise2013」


こんにちは。システム本部 三浦@hironomiuです。

今年も11/9,10,11/16,17でVOYAGE GROUPの冬のエンジニアインターンSunrise2013が行われました。

本エントリーは週末4日間と言う短い期間で全力で学びそして全力でアウトプットしたSunriseの様子をお伝えしたいと思います。

なお、VOYAGE GROUPではエンジニア職の新卒採用を行っております。
本エントリーを見てVOYAGE GROUPのエンジニア職に興味を持って頂けましたら、「古より伝わりし大陸の秘宝」という面白いグループワークも行っておりますので、ぜひご応募ください!!
また、通年で募集している就業型実践インターンGuildもありますので、そちらへのご応募もお待ちしています!!

Sunrise生集合写真
PB100445

Sunriseは「100万人が使うWebサービスを創造せよ」を趣旨に学ぶインターンです。
そのため個々の細かい技術に対してはあまり深掘りせずサービスを構築、運営していく上で
強く必要となるであろう勘所や考え方を中心に講義は進みます。講義は座学、ワークショップの両方を行います。
又、全てチーム単位で章毎に学んだ事や疑問に思ったことを発表する形で進みます。

スケジュール
月日(曜日) 講義
11/9(土) ネットワーク
サーバヘルスチェック
事例紹介(広告配信システム)
11/10(日) データベースサーバ(運用、拡張戦略)
11/11-15 中間課題
11/16(土) 最終課題
11/17(日) 最終課題、発表

初日(11/9)
ネットワーク構成
(総評解説 小賀さん@makoga)
Webサービスはインターネット上で展開されるものであるためネットワークに対する知識は必須と言う観点から事前課題でネットワークに対する調査課題が出されます。その課題についてチーム毎に発表を行いました。

発表を行う一枚
sunrise04

サーバヘルスチェック(講師 三浦@hironomiu)
サーバの稼働状況を把握し将来予測を行うことはサービスを拡張する上で重要だと言う観点から
実際のサーバに対して負荷を掛けサーバの稼働状況を様々な観点(コマンド)から計測し考察を行いました。
講義は4章構成で各章毎にチーム単位で考察について発表を行いました。

チームでサーバに負荷を掛け稼働状況から考察を行う一枚
sunrise03

広告配信システム事例紹介(講師 大谷さん@katzchang)
弊社スーパーエンジニア 大谷さん@katzchangより広告配信システムZucks AdNetwork(開発プロジェクト名Zgok)の紹介を行いました。
広告配信システムの説明をしながらZucks AdNetworkを構築していく上で気にかけた事などを織り交ぜた事例紹介でした。

講義中の一枚
sunrise06

番外編 カレー料理対決(運営 人事 長ちゃん)
Sunriseはただ全力で学ぶインターンではありません!!
VOYAGE GROUPは仲間と事を成すと言うCREEDがあります。
裏ミッションでは仲間と事を成す楽しさを学ぶべく2チームに分かれ美味しいカレーを作る勝負を行いました。
そしてCTO小賀さん@makoga、総合プロデューサー佐々木Hさん、スーパーエンジニア 大谷さん@katzchang の豪華3名が各チームの料理に対してジャッジを行います。

料理風景
sunrise08

ジャッジ中の一枚
sunrise07


二日目(11/10)データベースサーバ運用、拡張戦略(講師 三浦@hironomiu)
大規模Webサービスを運営していく上でデータベースサーバは必ず肝になると言う観点から
データベースサーバの運用の勘所(SPOFの対策、I/O戦略、バックアップリストア、拡張戦略)やVOYAGE GROUPのデータベース事例を座学で行いました。
6章構成で進み各章毎にチームで学び取ったことや疑問点を発表する形で進みました。

座学中の一枚
sunrise05

中間課題
初日のサーバヘルスチェックの講義で用いたサーバ環境を使って平均レスポンスタイムによるパフォーマンスチューニングコンテストを行いました。
上位5位が0.01秒単位での団子状態となる熾烈な争いとなりました。
課題を出した側としても僅差の接戦は嬉しい結果でした。

三日目(11/16)最終課題
最終課題は4チームに分かれ各チームに一人社員がサポータとしてついて課題制作を行います。

チーム GiantMAK(かずき、まさや、あんなたん、ぶーちゃん、サポータ 三浦@hironomiu)
チーム Great Shining Dragon だっち(だっち、りゅう、こうき、サポータ ゆうくん)
チーム Ogyaaaaaaaaaaa!! (もぐ、West、わっさん、サポータ のっかさん)
チーム らすと(おだし、そうくん、琉玖、あきら、サポータ こてつさん)

CTO小賀さん@makogaより最終課題のお題が発表されます。初日、二日目、中間課題で学んだ内容を用いて提示したお題に対するサービス設計を行います。
今年のお題はSNSサービスでした。そこからサービス概要と共にサービスのアクティブユーザ数(月あたり、日あたり)、
アクセス傾向(書き込み、読み込み)など提示された各種数値を元に
必要となるプロダクト、サーバ台数、ネットワーク構成、月間辺りの費用、データフロー、プラスアルファで
独自のアイディアを盛り込み四日目14:30までにアウトプットし15:00から各チームプレゼン発表することが最終課題となります。
又、費用の算出やH/Wの選定を行う際に同じ目線にするため「さくらクラウド」にて実装する縛りを設けました。

アウトプット風景

sunrise13sunrise14


四日目(11/17)
最終課題制作、発表

前日から引き続き夜通しで各チームは最終課題のサービス設計を行いました。
各チームさくらクラウドの環境を用いて実機テストによりサーバ台数や費用の算出
実際のサービスのイメージをメンバー間で目線を合わせながらアウトプットしていました。

プレゼン風景
sunrise16sunrise15
sunrise17sunrise18
sunrise19sunrise20

GiantMAK資料抜粋
sunrise09

Great Shining Dragon だっち資料抜粋
sunrise12

Ogyaaaaaaaaaaa!!資料抜粋
sunrise11

らすと資料抜粋
sunrise10

各チームとも特色があり素晴らしい資料とプレゼンになりました。
Sunriseではプレゼン後に順位発表が行われます。短期間でのアウトプットでしたが
各チームのレベルが高く審査は凄く難航しました。

まとめ

初日から最終日まであっという間のインターンでした。
短期間でしたがSunrise生、サポータ含め深く打ち解け全てのメンバーが最終発表に向けてぶれずに進んだ結果ハイレベルな成果につながったと思います。
ここで得た仲間や経験を通じて、これからも「未知」なるサービスを「創造」し続け、価値のある素晴らしいモノ創りに挑戦し続けて欲しいです。

圧倒的な成長を目指す「Treasure2013」(後編)

こんにちは。システム本部 三浦@hironomiuです。

本エントリーは
圧倒的な成長を目指す「Treasure2013」(前編改めプロローグ)
圧倒的な成長を目指す「Treasure2013」(前編)の続編エントリーです。

Treasure最終日打上げ
treasure6

今回はTreasure2013の後半戦についてお伝えしていきたいと思います。
又、本エントリーを見て圧倒的な成長をしたいと思って頂けた学生さんは
11/9(土)、10(日)、16(土)、17(日)の4日間で開催される
大規模サービス構築プログラムSunriseがありますのでエントリーお待ちしてます!!

後半戦は8/21-8/30の8日間で行われました。
今回はその8日間を振り返っていきたいと思います。

後半戦は4人1チームの5チームに分かれて前半戦で学んだ技術を用いて
実際にサービスを作成していきます。
作成したサービスは最終日に発表し順位をつけます。

サービスの概要を決定する際には前半戦で学んだリーンキャンバスをチームメンバー全員で埋めながら
本当に顧客に価値のあるものを目指しているか常に意識し限られた時間で
とことん議論しプロダクトの作成までこぎつけていました。

各チームの作ったサービスの概要をお伝えしたいと思います。

チーム わくわく(しんちゃん、みかみん、もと、もぐら
(サポータ @tamakiii、@chocopie116、@jubilostar)

gw1
「出会いをワクワクに」というコンセプトで、
ユーザーと、その友達のSNSへの投稿から形態素解析(mecabを利用)を用いて
興味のあるカテゴリを抽出し関連する興味のあるイベントをおすすめしてくれるサービスを作りました。

チーム 漆黒の闇に染まるフラペチーノ(いなっぺ、さっちゃん、ぶーさん、もりさん)
(サポータ をいでさん、しま、みやしゅー(さん))

gw2
「夢に向かう道を 学生に示す」というコンセプトで
過去の先輩たちがどのようなイベントを経て人生を歩んできたかを視覚化する
「アユメル」というサービスを作りました。

チーム My N.Y.(せんちゃん、ももえちゃん、だっち、なんちょく
(サポータ しんばし、りっきー、はっち(さん))

gw3
「写真で紡ぐストーリー」というコンセプトで
ユーザが、投稿された写真にコメントを付け
その写真を4つなげて1つの(4コマ漫画のような)ストーリーを作る
「Photo Links」というサービスを作りました。

チーム DTYZ(ダルツ、たまちゃん、ユキミネ、ざわ)
(サポータ 大山さん、ゆう、長ちゃん)
gw4 

「曲とそれに纏わるストーリーや思い出を共有し、
新しい曲と出会える」というコンセプトで「オモイデユニオン」というサービスを作りました。
 
チーム 七対子(かみかみ、るい、さっぽろ、2世)
(サポータ @hironomiu、@suzu_v、ごっさん)
gw5
「世界のRT数の多い画像tweetを見たい」というコンセプトで
WebGLで地球儀を作り地球儀上の国を選ぶと
その国のRTの多い画像tweetを表示するサービスを作りました。

最終日(プレゼン)
最終日は作ったサービスのプレゼンです。Treasureでは各サービスに順位を付けて発表します。
そのため各チームのプレゼンにも力が入ります。

総合プロデューサからプレゼンの注意
treasure7

プレゼン風景
treasure8

treasure9

treasure10

treasure11

treasure12


どのサービスもとても素晴らしくただ作るのではなく価値のあるサービスを作り出したと思います。
そして最終日のプレゼンを含めどこが優勝してもおかしくない出来上がりでした。

まとめ

初日から最終日までを改めて振り返るとTreasure生、サポータ含め全てのメンバーが熱く
圧倒的な成長に向けて全力で頑張れたからこそ素晴らしい結果で締め括れたと思っています。
Treasureのコンセプト『「想像」が「創造」になる。』の通り、自分たちの「想像」する価値のあるサービスを実際に「創造」することができた3週間だったのではないでしょうか。
ここで得た仲間や経験を通じて、これからも「未知」なるサービスを「創造」し続け、価値のある素晴らしいモノ創りに挑戦し続けて欲しいです。
記事検索
QRコード
QRコード