音声書き起こし 1. OP/インターン生紹介 00:00 @TheoSteiner 00:08 こんにちは、UITのTheoです。ユーザーインターフェイスとテクノロジーを愛する開発者のためのウィークリーポッドキャストのUIT INSIDE、今週も始めたいと思います。今回はLINEヤフーでのインターンシップをテーマに話していきたいと思います。喜多さん、遠藤さん、池田さん、本日よろしくお願いいたします。
@bondroid1322 00:30 よろしくお願いします。
@odan3240 00:31 お願いします。
@TheoSteiner 00:32 じゃあ、早速ですけど、お二方にちょっと軽く自己紹介をお願いできますでしょうか。じゃあ、遠藤さんからよろしくお願いします。
@bondroid1322 00:42 はい。静岡大学大学院の総合科学技術研究科情報学専攻というところから参りました、修士1年の遠藤と申します。普段学校では、そうですね、画像処理系の研究をしておりまして、対象としては高速道路上の空撮動画から車両検出をして、最終的には煽り運転の検出っていうところを目標に今頑張っています。本日はよろしくお願いします。
@TheoSteiner 01:05 よろしくお願いします。じゃあ、続いて池田さん。はい、よろしくお願いします。
@mutsuki.ikeda 01:09 東京工業大学情報理工学院情報工学系修士1年の池田ミツキと申します。普段大学ではe2eテストの主にロケータの修復支援っていうものをテーマに研究をやっています。よろしくお願いします。
@TheoSteiner 01:24 なんかお二人ともすごい面白そうな研究ですね。煽り運転ですか。はい、危ない運転ですね。なるほど。で、フロントエンドのテストっていう選考もなかなか聞こえないので、それもなんかとても面白い専門です。お二人とも今週で4週間ぐらいLINEヤフーにインターンしてくださったと思いますけど、そのインターンに参加したきっかけとかって
2. インターンに参加したきっかけ 01:41 @TheoSteiner 01:52 何かありますか。遠藤さんからお願いします。
@bondroid1322 01:55 そうですね。現在LIFFっていうLINEを使用した開発者ツールのチームに所属させていただいているんですけれども、現在2年ほど勤めているインターンがありまして。で、そちらでLIFFを使った開発を経験させていただいておりまして。で、今回、そのLIFFの開発し、ツールを開発する側の裏側の方ですね、に参加できるっていうことで、そちらの裏側を覗けるっていう部分にすごい興味があって、今回応募させていただいたっていう感じになりますね。
@TheoSteiner 02:23 なるほど。じゃあ、新米っていうより、もうLIFFブラウザとか、その、LINEで使われている技術をバリバリ使ってきた方ですね。
@bondroid1322 02:32 そうですね。バリバリっていうと、まだ少し及ばないかもしれないですけど。はい、使わせていただいていました。
@TheoSteiner 02:39 ありがとうございます。池田さんはどうですか。
@mutsuki.ikeda 02:41 そうですね。私は普段自分が使っているサービスを開発したいっていうのが開発のモチベーションの一番ベースのところにあるので、LINEは本当に毎日使わせていただいてますので、LINEの公式アカウントのフロントエンド開発ができるっていうことで、インターンに応募させていただきました。
@TheoSteiner 02:59 LINEのインターンシップには、その学生さん以外にメンタっていう役割もあっていて、今回だと僕が池田さんのメンターをやっていて、喜多さんが遠藤さんのメンターをやってたんですけど、喜多さんから4週間もあっという間に終わったと思いますけど、
@TheoSteiner 03:19 感想ちょっと軽く話していただけます。
@odan3240 03:22 そうですね、はい。4週間、結構あっという間だったなと思っていて。始まる前は結構学生インターンで4週間って結構重い部類の期間に入ると思うんですけど、あっという間に終わって、要するに、なんかその、タスク量もちょっと、今回自分がインターン受け入れるの初めてだったんで、多いか少ないかちょっとなんでしょうね。見積もりが難しい中だったんですけど、ちょうどいい感じで。はい、無事にタスクも話してもらえたので、良かったかなと思います。
@TheoSteiner 03:54 そうですね。僕も初めてメンター役やっていて、なんか最初はもう不安の塊だったんですけど、なんか池田さんすごい優秀なエンジニアなので、もうほとんど僕何も頑張らなくても、池田さんがすごい引っ張ってくれたので、なんかすごい貴重な4週間でした。じゃあお二人にチームについてとか、そのアサインされたタスクについてちょっと語っていただけますか。
3. インターンでジョインしたチームについて 04:14 @bondroid1322 04:21 はい。じゃあ自分から。そうですね。チームとしましては、4人のチームで、主にLIFFと
@bondroid1322 04:28 LINEログインっていうところの機能されているチームでした。で、自分の寄ったタスクとしては、LIFFの新しいインターフェースの、開発者側のですね、CLIっていうもののサーバーコマンドっていう、全く新しいコマンドについて任せていただきました。今まで、LIFFの設定系っていうのが、LINEのデベロッパーツールのコンソールサイトみたいなところから設定が必要だったんです
@bondroid1322 04:54 けども、このLIFF CLIっていうコマンドを使うことで、そちらの設定をCLI上で行うことができるっていうところで、そういったユーザーに使いやすさをより向上させてできるような、そういったツールの開発をしておりました。
@TheoSteiner 05:08 かっこいいですね。なんかバーセルのシエラ的なものが勝手に思い浮かんでいて、なんか確かにそれ、あれはすごい使いやすさとかアップしそうだなって思いました。池田さんはどういうようなタスクをされましたか。
@mutsuki.ikeda 05:22 チームとしては、今度は逆にブラウザ上で動くアプリの開発をやって、公式アカウントの関連アプリを開発している。チームでやったタスクとしては、公式アカウントのアプリ色々いくつかある中で、1つの獲得済みクーポン一覧ページっていうものをOAリストっていうアプリからOAクーポンっていうアプリに
@mutsuki.ikeda 05:45 移行するっていうのが大きなタスクで、そのまま移行するだけだと実装の重複とかが発生してしまうっていう将来的な課題が残ってしまうので、その共通のコンポーネントについてはウェブコンポーネントとしてライブラリの方に実装していくっていう課題をやっていました。
@TheoSteiner 06:02 そのライブラリの実装について、何か感想とかってあります。
@mutsuki.ikeda 06:08 本当にこう、細かいところまで気にしなくちゃいけないというか、ライブラリっていう都合上、その使用範囲がすごい広いので、広い使用範囲に対してこう柔軟に対応しないといけないし、もう逆に社内のデザインガイドラインもあるので、それには従わせるようにしないといけないっていう、その両立がすごい大変でした。
@TheoSteiner 06:30 そうですね、なんか、ヤフーのような会社だったら、もうステークホルダーがすごい数多くなってしまうので、結構いろんな議論とか発生すると思うので、大変な面もあると思いますけど、なんかLINEやヤフーでしか多分経験できないという面もあるので、それもいい経験かもしれません。
4. インターン期間中にやったこと 06:52 @TheoSteiner 06:52 遠藤さんはなんか特に、思いに残っているような感想とかってあります。作業についても
@bondroid1322 06:58 そうですね。今回、CLIツールっていうところで、いつもフロント触ってたんですけれども、少しバックの機能なども出てきてまして。ただ、開発していく時に、やっぱりコマンドラインインターフェースっていうだけあって、思った以上には、普段GUIで描画しているロジックと、それをコマンドに置き換えたみたいな感じで、
@bondroid1322 07:23 そこまで、すごい勝手が違うなみたいなこともなくて、わりかし柔軟に対応できたかなっていうのと、あとは、そうですね、開発の途中でプロキシサーバーを立てるっていうところがあったので、そういったところで少しバック側の知識なども必要になったので、新しいことを学びつつ。
@bondroid1322 07:40 結構問題があってもすぐに喜多さんにお答えいただけたりもしたので。そうですね。すごい困ったことはなかったですけども、ちょうどいい難易度感で、楽しく取り組むことができました。
@TheoSteiner 07:51 ちなみに、CLIを作った技術スタックって公開できるもんですか。
@bondroid1322 07:57 そうですね。言語としてはTypeScriptを使っていまして、CLIツールを開発するためのCommanderっていうライブラリがありまして、そちらのCommanderっていうものが、コマンドの機能であったりとか、コマンドのオプションの機能であったりとか、そういうコマンドラインでCLIで必要な機能について提供してくれているので、そちらを使用して開発していたっていうような感じになります。
@TheoSteiner 08:20 なるほど。なんかJSを使ったCLI開発は多分そんなに頻繁にできるものではないので、結構面白い体験みたいですね。
@bondroid1322 08:31 そうですね。貴重な体験させていただいたなって感じております。
@TheoSteiner 08:34 池田さんが行ったコンポーネント開発はどういうような技術スタックで進めていましたか。
@mutsuki.ikeda 08:40 2種類ライブラリ触ったんですけれども、片方がLitっていうウェブコンポーネントのライブラリを使っていて、TypeScriptで書けるんですけれども、その中でもHauntedっていうライブラリを使っているので、Reactのフックスライクで結構記述ができました。で、もう1つの方がSvelteというフレームワークを使っていて、こちらはもう少しLitよりもロジックが書きやすいなっていう印象で、
@mutsuki.ikeda 09:09 こちらのコンポーネントはそのロジックが占める割合が結構大きかったので、ロジックの書きやすいSvelteでっていう形でした。
@TheoSteiner 09:16 そうですね、なんか今回は結構そのテクニカルな方のライブラリで、割と独特な技術スタックだと思いますけど、それを覚えるために何が、どうやって覚えたんですか。どうやって理解したんですか。
@mutsuki.ikeda 09:33 最初はもう公式ドキュメントを見に行って、ベーシックユースエージみたいなところをつらつら眺めつつ、既存の他の実装、すでに他のコンポーネント、何種類か実装されてたのを見ながら書き方を勉強していったっていう感じですね。ただ、普段ReactとかVueとかでの開発を結構やっていたので、そこの記述に近い書き方ができたっていう意味で、そこまでそのギャップみたいなのは感じずにできました。
@TheoSteiner 10:00 じゃあ、ちょっと仕事体制について質問させてください。お二方は基本的にリモートで仕事を進めていて、どういう進め方で着手したんですか。
@bondroid1322 10:12 はい、そうですね。自分の方は毎朝、朝会っていうものが各々準備できたタイミングで報告し合って、揃って今日のやることみたいなことを話し合って、まずそれでお互いにやることを確認し合うっていうところから始まって、昼頃に喜多さんに「こういう風な今進め方でやってるんですけど」みたいな感じで、方針の、なんでしょう、間違ってないか、みたいなところで照らし合わせていただいて、ペアプログラミングを30分くらい
@bondroid1322 10:44 させていただいて、その後、ミーティングなどがあればそちらに出席して、他の時間で実装に取り組んで、その都度、喜多さんに、喜多さんチームメンバーですね、困ってるところとか、あとはコードが書けたらレビューもらったりとかっていうのをSlack上でやり取りして、
@bondroid1322 11:03 で、最後の6時くらい、終業時間終わる前くらいですかね、そこで、喜多さんと最後に1日の1on1面談をやって、1日の業務が終了するみたいな感じでしたね。
@TheoSteiner 11:14 じゃあ、リモートではありますけど、結構しっかりミーティングとかでキャッチアップしながら進めたって感じですね。はい。池田さんはどういう
@mutsuki.ikeda 11:21 感じでしたか。私は前半の方は毎朝Theoさんとミーティングをしては、今日何をやろうとかそういう話をしつつ、タスクの区切り区切りだったり、実装の方針が自分の中である程度固まったタイミングでもう一度Theoさんとミーティングをして、この方針で問題ないかみたいなのを話しながら進めていったので。そうですね。リモートでも十分なコミュニケーション取れて、迷うことなく進められたかなって思います。
5. インターンの感想 11:50 @TheoSteiner 11:50 なんか、今回のインターン期間で、最も楽しかったとか、最も印象深かったことって記憶にありますか。
@bondroid1322 11:59 はい、そうですね。インターン期間中にDot(Dev Open Talk)っていうイベントで実際に出社することができて、その際に初めて喜多さんや他のチームメンバーと顔合わせして、そこで色々オフィスツアーとか、一緒に作業したりとか、ご飯食べたりとかすることができて、そういう実際に顔を合わせて作業するみたいのがすごい楽しかったなっていう印象覚えてますね。池田さんは
@mutsuki.ikeda 12:23 どうですか。私も初日に出社させていただいて、そのオフィスの広さに驚いたり、初日に顔合わせを、Theoさんともう1人上長の方と顔合わせできたっていうのも、その後の進行にすごいスムーズに行くきっかけというかになったと思うので、初日に出社できたのがすごい印象に残ってますね。
@TheoSteiner 12:45 で、逆になんかインターンに参加する前の想像と何かのギャップとか、なんかこれ想像と違うなみたいなところってありましたか。
@bondroid1322 12:55 そうですね。本当に自分の勝手な偏見ではあったんですけども、LINEヤフーさんってすごいエンジニアの方強い印象があって、なんかそのチームで何かやるってよりかは、個々のエンジニアがすごい強くて、なんか個人戦じゃないですけど、なんかそういうチームでやるってよりかは個人の力でみたいな、そういうイメージが結構強かったんですけど、全然インターンやってみてそんなことはなくて、
@bondroid1322 13:20 チームメンバーすごい優しいですし、聞いたらそれ以上に付加情報をつけて返していただいたりとかで、自分が困ってるところとかあったらすごいなんでしょう、熱心になって教えていただけたりとか、そういう風にしていただけたので、なんかそういう印象としては全然チームでもプロダクト作ってるんだなっていう印象が強かったなっていう感じですかね。
@mutsuki.ikeda 13:40 私は出社する前は、リモートメインの会社みたいなイメージがあったので、行っても全然人がいないんじゃないかなってちょっぴり思ってたんですけど、オフィス行ったら結構賑やかというか、人は結構いて、活気を感じられて、オフィスに行っても静かで寂しいみたいなことがないっていうのが、いい意味で期待を裏切られましたね。
6. ED 14:03 @TheoSteiner 14:03 というわけで、今回はインターン生とLINE、ヤフーでのインターンシップについて話していきました。LINEのフロントエンド開発組織UITでは、そのようなフロントエンドに関する議論やキャッチアップを日々行っております。過去のエピソードでは、社内の学習企画から始まったコンテンツも多くありますので、今後も発信していければと思います。
@TheoSteiner 14:28 今回はLINEヤフーのインターン生と話してきました。遠藤さん、池田さん、喜多さん、ありがとうございました。
@odan3240 14:38 ありがとうございました。