Dataのインターンに参加してきた。毎年インターンに参加した学生が報告ブログを書くのが恒例行事になっているので、自分も書いてみることにする。Dataの方には、ブログを書くことおよび成果発表スライドを公開することの許可は得ている。インターンで何をやったのか今回のインターンではDigdagの機能開発を主に行った。Dataが公開しているオープンソースのワークフローエンジンであり、似たようなproductとしてはAirFlow、Luigiなどがある。さんの2人にお世話になった。Viewオフィスで行った成果発表プレゼンに使った資料にまとめまっているのでこちらを参照。日本オフィス側にもZoomで配信しながらプレゼンを実施した。parameterという、hash形式でオブジェクトを共有する仕組みがある。一度workflowの実行が終わってしまうとそのデータを次の実行時に引き継ぐことができなかった。operatorなどで実行し、どこかにその値を保存しておく必要があった。それを気軽にoperatorだけで実現するために、外部のデータストアにDigdagからデータを保存、およびロードできるようにする仕組みを実現するOperatorを実装した。利用できるデータストアとしてPostgreSQLとRedisをサポートしている。参照していただきたい。*1digdag-uiのログを見やすくしたgithub.comdigdag-uiのsessionページなどでworkflowのログを閲覧できるのだが、1つのworkflowが出力するログ全てが一箇所に出力されてしまうため、どのログがどのtask(attempt)に対応しているか分かりづらくなるという問題があった。試しに単純にattemptごとにログを分割して表示するようにフロント側を修正してみたら、ええやん、ということになりマージされた。APIでレスポンスできるattemptやsessionの数を増やせるようにしたgithub.comDigdagは内部で組み込みwebサーバを起動しており、REST形式のAPIを提供している。とハードコーディングされていたので、それ以上の件数を一回のリクエストで取得できなかった。以上に上限を増やせるようにした。上限として適用される。tdプラットフォームの実行済みjobの結果をexportするOperatorを作ったgithub.comtdプラットフォームに対してQueryを実行した結果などを、後から別のデータストアなどに出力したい場合に使えるOperatorである。今まではDgidagのオペレータ経由でQueryを実行することはでき、その際にオプションを指定することでQueryの結果を別のデータストアなどに出力することはできた。同じQueryの結果を、複数のデータストアに書き出すことができなかった。parameterに保存するようにしたgithub.com詳細はPRを見て欲しい(Digdagを普段から使ってれば見ればわかるハズ)。APIへのアクセスを遮断する方法について調査した。Mugaさんのセッションを聞いていただければと思う。Viewオフィスにて勤務した。MountainViewオフィス勤務であった。さんにお世話になった。東京オフィスにて勤務した。docを書いて、それを2人にメンターに見てもらって問題なければそのまま実装に入る、という流れだった。普段、チームでwebサービスなどの開発をしている人なら、恐らく日常的に実践しているような開発フローだと思う。東京オフィスでは毎日ケータリングでランチを無償で提供していただき、実に最高であった。普段はコンビニ弁当と松屋で生きているので、久々の栄養バランスの取れた食事は大変ありがたかった。MountainViewオフィスにて勤務した。さんがメインでメンテナンスをしているということもあったので、時差がある状態でリモートでコミュニケーションを取るよりは同じタイムゾーンで直接会話できる環境で働いた方がやりやすかろう、という会社側のお気遣いによるものである。英語で1on1していただいた話USにいる間も普通に開発をしていたが、せっかくUSに来たのだからということで、MountainViewオフィスのエンジニア以外の方と何人か1on1をさせていただく機会をいただいた。繰り返す、英語である。30を過ぎて初めて海外に単身渡航したおっさんが初めて英語ネイティブの人と30分間1on1した結果なんですが、中学1年で習うような英文よりも難しい英文は聞こえていても全く脳の処理速度が追いつかずに言語として処理できず、ロクに話せもしませんでした。自分の英語は大学院ブログにも書いているがTOEIC700点のスキルしかなく、Speakingに関しては中学校時代で完全に止まっていた。MountainViewオフィスの方々としても、はるばる日本からUSまで1人でやってきた大学院生(おっさん)がここまで英語が話せないということについてはきっと驚いただろうが、自分自身もこんな英語力でいきなり外資企業のオフィスに来てしまって正直驚いた。人生、それなりに歳をとってみても、まだまだびっくりするような事態が突然身の上に起こることがあるのだな、ということを久しぶりに思い出した。結果的に、英語1on1は何度か回数を重ねる度に多少マシになって、何度も聞き返しながらも、かろうじて高校1年生ぐらいの英語を使って自分の専攻について説明したり、相手の業務内容について質問できるようにはなったので、せっかくだから日本に戻ってからもちゃんと英語勉強を継続しようと思った。TOEICの勉強を再開する*2のとオンライン英会話サービスとかを始めようと思っている。帰国する頃になると、疲れていたのか以下のような謎ポエムをインターネッツに残しているが、きちんとした人間らしい高度なコミュニケーション手段を使えるにこしたことはないので、さっさと英語は勉強した方がよいというのが今の結論である。実際に働いていたのは33日間ということで、かつてフルタイムで働いていた身からすると短期間であるため、その短い期間の中で、どのように早く立ち上がって確実なアウトプットを出していくかが今回のチャレンジだったように思う。Dataのメンターのおふた方は自分のアウトプットについて概ね良い感想を抱いていただいたようなので安心した。自分はフルタイムで働いたことはあるがインターンは初めてという珍しいパターンだったと思うが、TreasureDataの場合は両者の間にほとんど差異はなかったように思う。逆に、そのように働ける学生でないとインターンとして採用されるのは厳しいかも知れないが、興味があって腕に自信のある学生はぜひ来年応募してもらえればと思う。2016の4日目です。3日目は...2016-10-23今読んでる本とか完全に自分用のメモ。『1日ひとつだけ、強くなる。(1)検索リンクGitHubseri::diary::graduate_schoolseri::diary::competitive_programmingはてなブログをはじめよう!serihiroさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。