去る11月28日に、株式会社はてなさんとドワンゴの合同ハッカソンをドワンゴセミナールームで開催いたしましたので、そのレポートをお届けします。
イベントページは http://dwangohatena.connpass.com/event/21717/
この合同ハッカソンは、京都と東京の2ヶ所で開催されたもので、京都で開催した際のレポートは、はてなさんからあがっておりますのでご参照ください。
東京会場には、39名の学生さん(高校生、大学生、専門学校生など)にお集まりいただきました。参加者同士でチームを組みやすいよう、言語ごとにゆるくグループ分けして座っていただいたのですが、半分近くの参加者が事前にチームを組んでの参加だったのが意外でした。


10時半からご挨拶と両社のAPIの紹介をし、チームビルディング的なことをし、そこからすぐ8時間に及ぶハッカソンを開始しました。
お昼もお弁当を用意しているため、ほとんどのチームが休憩なしのノンストップで開発に集中していたのが印象的でした。

19時にタイムアップし発表できるチームを募集したところ、最終的に15チームに発表してもらいました。

力作や迷作が色々ある中、ドワンゴ賞とはてな賞を選ばせていただきました。
ドワンゴ賞: gochiusa.net さんの「nicoSyncPlayer」

ニコニコ動画を仲間同士で同期的に視聴するサービスで、ハッカソン中はごちうさ1期1話にしか対応してませんが、今後任意の動画に対応させていきたいとのことでした。
はてな賞: ガミエグチさんの「Hatena Maze」

はてなブログの記事が壁となっている迷路をつくり、スマホの加速度センサで操作し、壁にぶつかったらその壁にあたる記事ページにジャンプするという、はてなブログの新しい記事との出会いを促進するアプリでした。


その他にも、スマホの裏面をタップすることで動画の盛り上がり場所を共有するサービスや、はてブページを開く前にコメントのネガポジが分かるChrome拡張や、動画投稿者の全投稿動画の再生数を株価と見立てて投資するサービスなど、面白いアプリがたくさん誕生していました。


ご参加いただいた皆さん、快く共催を引き受けていただいたはてなさん、ありがとうございました。

ドワンゴでエンジニアの教育も担当している清水(@meso)です。
昨年に引き続き、今年もエンジニアの新人研修を担当いたしましたので、その内容をご紹介いたします。
今年は、昨年までと異なりエンジニア以外へのプログラミング研修を開催したり、エンジニアへのプログラミング言語の研修を Scala に変更したりしたので、その辺りを重点的にご紹介いたします。
合同プログラミング研修
ドワンゴに入社したエンジニア、デザイナ、企画の新入社員と、KADOKAWAに入社した新入社員の方の全員を対象にしたプログラミング研修を行いました。
プログラミングをバリバリやってきたエンジニアたちと、プログラミングをしたことがない非エンジニアたちを合同で教育するには、どのようなカリキュラムにすべきか悩んだ結果、エンジニアに積極的にTA的な立ち回りを演じてもらうことにしました。
そもそも4日間という短い期間で、プログラミング未経験者に対してある程度達成感のある教育を行うというのは、講師一人だけの力では困難です。そこで、エンジニア2人に非エンジニア1人という3人組のチームを作ってもらい、講師が出す課題についてエンジニア2人が非エンジニアに教える、という形式を取りました。
カリキュラムの内容は以下の通りです。
初日:
- PCの構成要素
- ハードウェア / ソフトウェア
- OS / アプリケーション
- PCでないコンピュータって?
- Webとは
- Webブラウザ
- Chrome をダウンロード
- Webページが表示されるまでの流れ
- URL/IPアドレス/DNS/NAT/DHCP
- HTTP/HTML/CSS/JavaScript
- WWW以外のインターネットって?
- 課題例
- HTMLの基本
- チーム紹介のページ作成せよ
- エディタは Atom
- 文字コード/改行コード
- プログラミングとは
- JavaScript
- テキスト: ノンプログラマのためのJavaScriptはじめの一歩
- 2.2節 文字列と数値 まで
2日目:
- JavaScript
- 2.3節 配列とオブジェクト から 2.6節 繰り返し まで
- 課題(例)
- 1から1000までの3つの整数a, b, cが直角三角形の各辺になるようなa, b, cの組み合わせを、重複なく全て出力せよ
- 回転したりひっくり返したりして重なる三角形は重複とみなす
3日目:
- JavaScript
- 2.7節 関数 まで
- 課題(例)
- 素数を判定する関数 isPrime を定義し、1から100までの素数の数を求めよ
- JavaScript
- Node.js の導入
- 課題(例)
- コンソール上での数当てゲームの実装
- require, readline, Math.floor, Math.random, 再帰
- Twitter API
- アプリケーション登録/AccessToken生成
- クライアントライブラリの導入/npm
- タイムライン取得、ツイート生成
4日目:
- Twitter API
- ユーザストリームの取得
- JSON, Stream, 非同期処理とコールバック関数
- 最終課題
- 数当てゲームができるTwitterBotを作る
- String.split, parseInt, isNaN
5日目:
- 最終課題続き
- 振り返りとまとめ
この研修だけで終わるのではなく、研修で学んだ内容を今後も継続的に業務に活用していってもらえることを願っています。
エンジニアへの Scala 言語研修
昨年までは Java を言語研修で教えていましたが、今年は Scala で言語研修を行いました。
教材も自社で作りました。幸いドワンゴには、日本Scalaユーザーズグループ代表でJapan Scala Association 代表理事の @kmizu を始めとして、Scalaz や sbt のコミッタである @xuwei_k などの優秀な Scala エンジニアが揃っておりますので、彼らの手を借りて教材を作り上げました。
教材のメインターゲットは、大学の講義で Java をひと通りは習った経験のある新入社員、です。
教材は2部構成になっており、前半のScalaの文法解説に2週間、後半のPlay2を用いたアプリケーション開発に1週間掛けて教育していく予定でした。実際には、前半に1週間半、後半に1週間半ぐらいの割合になりましたが。
教材の目次をざっくりと紹介すると
前半:
Scalaとは / sbt インストール / Scala の基本 / sbt でコンパイル・実行 / Scala の制御構文 / IDE(IntelliJ IDEA) / クラス / オブジェクト / トレイト / 型パラメータと変位指定 / 関数 / コレクションライブラリ / ケースクラスとパターンマッチング / Implicit / エラー処理 / Future と Promise / テスト / Java との相互運用
後半:
Typesafe Activator と Play Framework / モジュールとレイヤ / 画像変換サーバ開発
となっています。
目次には現れてないトピックとしては
- メソッドのカリー化, 自分型を使ったDI, トレイトの継承を使ったDI, モノイド則, モック
- アクターモデルとAkka, RabbitMQ, Specs2
演習問題の例としては
- Immutable な Stack 型を定義せよ
- トレイトを使ったリファクタリング
- foldLeft を用いて reverse を実装せよ
- 二分木を表す型を定義し、sort メソッドを実装せよ
- Option での例外処理を Either でリファクタリング
- CountDownLatch の実装
などがあります。
結果として、弊社に Scala エンジニアが40名以上増えた!と言えると思っています。
そんなドワンゴでは、現在、エンジニアインターンを大募集しております。
ご興味をもたれ方は是非 こちら からご応募ください。
ドワンゴ社内チャットにおける各言語別チャンネルの参加者数をグラフで表してみた
2015/05/22(金) 13:00
タイトルの通り。
各社で見比べると傾向が見えて面白い気がしたので、とりあえずドワンゴ社内 Slack のものを公開します。

各社で見比べると傾向が見えて面白い気がしたので、とりあえずドワンゴ社内 Slack のものを公開します。

Scala と JavaScript が2強ですね。C++ や Erlang も上位に入っているのがドワンゴらしいところでしょうか。逆に Perl はチャンネルすら存在しなかったです。
言語以外の技術要素やエディターなどでも集計してみたのですが、宗教戦争が始まりそうなので公開は控えておきます。
ドワンゴではScala, JavaScript, C++, Erlang, Android/iOS, PHPなどが得意なエンジニアを募集しています!
メール配信:あり更新頻度:不定期※メール配信はチャンネルの月額会員限定です
月別アーカイブ
- 2018年11月のブロマガ記事(1)
- 2017年10月のブロマガ記事(2)
- 2017年09月のブロマガ記事(2)
- 2017年08月のブロマガ記事(4)
- 2017年07月のブロマガ記事(3)
- 2016年12月のブロマガ記事(1)
- 2016年07月のブロマガ記事(1)
- 2016年06月のブロマガ記事(1)
- 2015年12月のブロマガ記事(1)
- 2015年07月のブロマガ記事(1)
- 2015年05月のブロマガ記事(1)
- 2015年01月のブロマガ記事(1)
- 2014年11月のブロマガ記事(2)
- 2014年10月のブロマガ記事(2)
- 2014年09月のブロマガ記事(1)
- 2014年08月のブロマガ記事(2)
- 2014年07月のブロマガ記事(3)
- 2014年06月のブロマガ記事(1)
- 2014年03月のブロマガ記事(1)
- 2013年11月のブロマガ記事(1)
- 2013年10月のブロマガ記事(2)
- 2013年09月のブロマガ記事(1)
- 2013年08月のブロマガ記事(3)
- 2013年07月のブロマガ記事(1)
- 2013年06月のブロマガ記事(2)
タグ
- ドワンゴ(33)
- dwango(33)
- engineer(27)
- エンジニア(27)
- ご報告(7)
- 新配信(7)
- kbkz_tech(4)
- 動画検索(4)
- ニコニコ動画(4)
- Scala(4)
- 歌舞伎座.tech(4)
- Chef(4)
- ハッカソン(4)
- hackathon(3)
- インフラ(2)
- C++(2)
- 研修(2)
- はてな(1)
- internship(1)
- 新人研修(1)
- 勉強会(1)
- カンファレンス(1)
- SIGGRAPH(1)
- ICML(1)
- CVPR(1)
- インターン(1)
- mastodon(1)
- friends.nico(1)
- programming(1)
- プログラミング言語(1)
- プログラミング(1)
- tokyo_technical_samurai(1)
- robot(1)
- elasticsearch(1)
- Unity(1)
- OculusRift(1)
- インターンシップ(1)
- event(1)
- 将棋(1)
- API(1)
- ma9(1)
- ドワンゴ技術部(1)