# ESメモ ### これまでに参加したことがある技術イベント(個人・チーム・企業などを問わない)の概要、ご自身の役割、時期を教えてください 技術イベントへの参加経験はありません。 ### これまでの開発経験の中でエンジニア/データエンジニアとしてご自身が最もプロジェクトに貢献したと思うエピソードについて教えてください * ### そのプロジェクトの背景を教えてください 仮想通貨メディアのスタートアップで、エンジニアとしては途中から携わった。すでにCMSやサイトの大枠は完成しており、各所の改修や新たなサービスの導入などをメインに行っていた。ページの滞在率など、UI/UXが売り上げに大きく関わるため、デザインの修正などをよくすることになった。 * ### ご自身の役割を教えてください 主にNuxt.js(Vue.js)を用いたフロントの開発の役割を担っていた。 * ### そのプロダクト/プロジェクトにおいて自分がした貢献について自由に記述してください Nuxt.jsを用いてフロントの開発を行っていた。新サービスの導入や、ボタンのデザインを変えるなどのマーケティング上の一時的なテストを行う ことが多かったため、コンポーネントを作成するか否かなど、後から見た際に誰でも改修しやすいようなコード、ディレクトリ構造にすることを心がけた。特に、pagesディレクトリのファイルではページ内容がすぐにわかるように、HTMLが冗長になるのを防ぐべく積極的にコンポーネント化したり、クラス名をBEMの命名規則にしたがって決めるようにしたりしていた。 また、エンジニア以外の社員からのデザインの改善や新たなページの作成などの依頼に対しては、コミュニケーションの齟齬がないよう積極的に直接話し合うようにしていた。 ### 今現在想定しているキャリアプランを教えてください 主にフロントエンドの開発しかしたことがないので、もう少し経験を積んでフロント開発の技術を高めたうえで、サーバーサイドやインフラなどについても一通り開発経験を積んでおきたい。 長期的には、マーケティングなどビジネスにも興味があるので、なにかアイデアを思いついた際に自分で設計ができるようになりたい。 --- # 2020Winter ## Recruit ### 今回経験したいキーワード * クライアントサイド * サーバーサイド * 要件定義 * データビジュアライゼーション * 大規模システム ### [経験したいと思うキーワード]を選択した理由を、以下2点を踏まえた上で教えてください。○800文字以下・過去の経験や今取り組んでいること・"RECRUIT Job for Student"に求めること 私はこれまでインターンシップ等でWEBアプリケーションの開発を経験してきました。その中でも特にWEBメディア開発に最も注力し、主にクライアントサイドの開発を担当し、場合によって簡易なサーバーサイドの改修なども行ってきました。WEBメディアにおいては、文章や画像だけでなくグラフやチャートなど様々な形式を用いて様々な情報を伝えることが重要であり、ユーザーにより効果的に伝えるためにも、デザイナーとも相談しながらUI/UX、データビジュアライゼーションについては常に意識しながら開発をしていました。 また、サイト全体のデザイン変更などの大きめのプロジェクトにおいて、要求に応えられるように必要な作業を小さなタスクに切り分けていくことがあったのですが、その際には要件定義の難しさを実感しました。 私はこれまで比較的小規模なシステムの開発しか経験したことがないため、RECRUIT Job for Studentでは大規模なシステムにおけるクライアントサイドの開発だけでなく、開発の体制や要件定義のあり方などについても学ぶことができれば嬉しいです。 以上のようなWEB開発についての興味や経験を踏まえ、「クライアントサイド」「サーバーサイド」「要件定義」「データビジュアライゼーション」「大規模システム」を選択しました。 ### これまでの経験の中でエンジニアとしてご自身が最も開発に貢献したと思うエピソードについて教えてください。 #### 開発の背景を教えてください。 WEBメディアサービスを提供するスタートアップ企業でWEBアプリケーションの開発を行った。単純なメディアとしての記事まわりの開発だけでなく、仮想通貨のチャートの表示や、AMP等によるSEO対策なども行っていた。 #### ご自身の役割を教えてください。 主にフロントエンドの開発を担当し、時には簡易なバックエンドの改修も行った。エンジニアが学生とフリーランスのみだったこともあり、タスクの担当振り分けなどもすることがあった。 #### 自分が貢献した部分について、ご自身のこだわりがわかるように具体的に記述してください。 フロントエンドの開発にあたっては、コンポーネントを適切に分割する、階層構造をわかりやすくする、BEMに従ってクラス名をつけるといったこと等を意識し、改修コストを抑えるようにしていた。また、コンポーネント間で再利用できそうなメソッドをエンジニアチームが学生とフリーランスのみであったことから入れ替わりが多く、途中から新たに参加したエンジニアが開発を進めていく際のコストを小さくすることは非常に重要であった。 また、UI/UXの部分については、他部門やデザイナーとも相談しながら要件を明確にしつつユーザーフレンドリーなページを作れるように尽力した。社内のエンジニアが私だけしかいないような時期もあったため、私自身が担当しないタスクについても、こうした他部門とのコミュニケーションは積極的にとるよう心がけていた。 --- # 2021 SUMMER ## LINE第1ターム(4/16) * #### 自身のIT関連技術アピールについて具体的にご記入ください。(プロダクト開発成果、サーバー・データベースの構築・管理、プログラミングコンテスト参加経験、アプリ開発経験など) 大学2年生の夏から1年半ほど、インターン先の会社(https://coinotaku.com/)でwebアプリの開発を行っていた。サーバーサイドはExpress、フロントエンドはNuxt.jsで書かれており、私は主にフロントエンドの開発を担当し、一部サーバーサイドの改修も行っていた。競合の多い業界のwebメディアサービスであったため、UI/UXの改善だけでなく、ページ読み込みの速度改善やampページの作成などのSEO対策もしていた。 また、学部ではESRGANという深層学習ベースの超解像手法を用いた応力コンター画像の超解像化をテーマに卒業研究を行い、公開されているコードに沿ってモデルの実装と実験を行った(https://github.com/maru919/BasicSR)。 現在は、主に現代ポートフォリオ理論における将来の収益率の予測に関する研究の手伝いとして、公開されている財務諸表や決算短信文書から情報を抽出し、特徴量を生成するといったスクリプトの実装を行っている。これらは応用研究や実用化の際に使いやすいようにパッケージ化を行い、また拡張性を考慮してクラス、メソッドの設計をしている。 * #### インターンに参加してやってみたいこととその理由をおしえてください 私は将来的に多くの人に使ってもらえるサービスを開発することが目標であるため、本インターンに参加することで、実際に多くのユーザーが利用しているLINEのサービスの開発を経験したい。 LINEのような大規模なサービスの開発を経験する機会は滅多にないため、チーム開発などがどのように進められているのかという点にも興味がある。 またもちろん、実際にLINEのエンジニアの方々にフィードバックを頂きながら開発を行うことで、開発における知識・経験を積み、エンジニアとしても成長したい。 ## メルカリ * #### チーム開発の経験があれば具体的にご記入ください。(インターンシップ・アルバイト・課外活動等) また、どのようなチーム構成でその中であなたがどんな役割をしていたかご記入ください。(どのくらいの人数で、どのような構成のチームで開発していましたか。) インターン先の企業(https://coinotaku.com/)でwebメディアの開発を担当していた。 初めはPMも務めるCTO含む4人のチームで開発を行っていたが、学生が中心のチームだったためメンバーの入れ替わりが多く、最後の1年ほどはほとんど2人で開発を行っていた。私は主にフロントエンドの開発を担当し、場合によって一部サーバーサイドの改修もおこなっていた。 また2人になってからは、ビジネスサイドとのコミュニケーション、タスクの整理、デザイナーとのUIの擦り合わせといった役割も担っていた。 * #### これまでの開発経験において、どのような技術スタック(プログラミング言語、フレームワーク、ライブラリ、クラウドなど)を使用してきましたか。 その中であなたが一番伸ばしたい技術は何ですか?理由とともに教えてください。 JavaScript, Node.js, Vue.js, Nuxt.js, Express, Python 私はWebアプリケーションにおいて実際にユーザーが直接体験するインターフェースの開発に強く興味を抱いているため、これまで開発に用いたことのあるVue.jsなどに限らず、React.jsなどのフレームワークを利用したフロントエンド周辺の技術を伸ばしたい。 ## yahoo ### TypeScriptを用いたモダンなフロントエンド開発! 社内A/BテストツールのUI機能追加/改善を体験! - #### 以下①・②について記入してください。 #### 1. 第一希望コースを選んだ理由やこのコースで習得したい技術、経験したいこと等を記入してください。 私はWeb開発、特にフロントエンド領域の開発に興味を持っており、またTypeScriptは使ってみたいと思っていたものの実際に開発に利用したことがないので、TypeScriptを用いたツールの開発を経験してみたい。 #### 3. 第一希望コースの「必要な経験/スキル」「あると望ましい経験/スキル」に関して、ご自身の経験やスキルでPRしたいことを記入してください。 私は大学2年の夏から大学4年の春にかけて、CoinOtaku(https://coinotaku.com/)というWebメディアを運営する会社でエンジニアとしてインターンをしており、そこではVue.js、Nuxt.js(バックエンドはExpress.js)を用いてフロントエンドの開発を行っていた。 学生中心であったため入れ替わりが多く、大学3年の夏頃からはフロントエンドの開発は一人で担当し、ビジネスサイドと相談しながら要件定義なども行っていた。 ### Yahoo!検索(画像)のフロントエンド開発 - #### 以下①・②について記入してください。 #### 1. 第二希望コースを選んだ理由やこのコースで習得したい技術、経験したいこと等を記入してください。 私は将来的に多くのユーザーに使ってもらえるようなサービスの開発に携わりたいと考えているため、実際に多くの方が使っているYahoo!検索のフロントエンドの開発に参加してみたい。 また具体的には、できるだけ快適に動くように実際に絞り込みなどをどのように行っているのかという点にも興味があり、学んでみたい。 #### 2. 第二希望コースの「必要な経験/スキル」「あると望ましい経験/スキル」に関して、ご自身の経験やスキルでPRしたいことを記入してください。 私は大学2年の夏から大学4年の春にかけて、CoinOtaku(https://coinotaku.com/)というWebメディアを運営する会社でエンジニアとしてインターンをしており、そこではVue.js、Nuxt.js(バックエンドはExpress.js)を用いてフロントエンドの開発を行っていた。 学生中心であったため入れ替わりが多く、大学3年の夏頃からはフロントエンドの開発は一人で担当し、ビジネスサイドと相談しながら要件定義なども行っていた。 ### Yahoo!広告の広告クライアント領域のUI開発 - #### 以下①・②について記入してください。 #### 1. 第三希望コースを選んだ理由やこのコースで習得したい技術、経験したいこと等を記入してください。 私はWeb開発、特にフロントエンド領域の開発に興味を持っており、またYahoo!の広告事業において実際に活用されているサービスの管理ツールがどのようになっているのかという点にも興味があり希望した。 #### 2. 第三希望コースの「必要な経験/スキル」「あると望ましい経験/スキル」に関して、ご自身の経験やスキルでPRしたいことを記入してください。 私は大学2年の夏から大学4年の春にかけて、CoinOtaku(https://coinotaku.com/)というWebメディアを運営する会社でエンジニアとしてインターンをしており、そこではVue.js、Nuxt.js(バックエンドはExpress.js)を用いてフロントエンドの開発を行っていた。ページ上に表示する広告などを管理するための社内ツールのようなものも開発しており、そうした管理ツールやそのUIの重要性も感じた。 ### 自身が取り組んでいる研究の内容について教えてください。研究未実施の場合は、予定であることを明記の上、現時点で取り組みたい内容を記入してください。(100文字以上、500文字以内) 研究背景:信用取引においては、依然として人の手によって取引内容の確認・約定・マージンコールといった作業が行われており、非効率なステップが多く存在する。またある有価証券の価値の急な高騰・暴落などが生じた場合には、特にそれが海外の市場で取引される有価証券である場合はマージンコールの実行までにタイムラグが発生してしまう。これによって必要以上の損失が生じるような場合もあり得る。 研究目的:信用取引そのものやマージンコールなどを、信用を維持したままより効率的に実現できるプラットフォームをブロックチェーンを利用することで実現できるかを検証する。 研究内容:現在の私の役割としては、実際にブロックチェーンを実装する前に、現在想定している仕組み、ロジックで実際の価格変動などに耐えうるシステムになっているのかを検証できるようなシミュレータをPythonなどで作成し、シミュレーションを行うことである。 実装言語・使用ツール等:Python ### 【Q5-1-1】で回答いただいた経験の概要を簡潔に記入してください。 株式会社CoinOtaku 【カテゴリ】インターンシップ(業務委託) 【業務概要】運営するWebアプリ(https://coinotaku.com/) の保守開発を行っていた。 【開発人数】2~5人 【担当役割】主にフロントエンドを担当し、エンジニアが少ない時期は一部簡易なバックエンドの改修なども担当した。また、ビジネスサイドやデザイナーと相談しながら要件定義をしていくといったことも担当した。 【開発言語・技術】Node.js, Vue.js, Nuxt.js, Express.js --- # 2021本選考 ## LINE ### なんか説明会とかのやつ #### 授業や個人で学んでいる、開発・研究している内容をできるだけ詳細に教えて下さい。 - Vue.js、Nuxt.js、Express.jsを用いたWebアプリケーションのフロントエンドを中心とした開発(インターン) - ESRGANを用いた応力コンター画像の超解像化(卒業研究) - 企業の事業内容に着目した共分散行列による深層学習ポートフォリオ最適化(研究手伝い) - 決算短信等のスクレイピング、データベースの作成、実験用コードの実装等 - ブロックチェーンを利用した貸借取引の実証研究(修士研究) - 取引の自動化を行う上でのロジックの検証用のシミュレーターの実装(https://github.com/maru919/BC-experiment-simulator) --- ## Yahoo! ### アプリケーション・プラットフォーム(フロントエンド領域等)を希望する理由を教えてください <!--  私は将来的に多くの人に使ってもらえるサービス(プロダクト)の開発に携わりたいと考えている。様々なアイデアや技術をサービスに落とし込み社会実装することに興味があるため、アプリケーション・プラットフォーム開発に携わりたい。  また、アプリケーション・プラットフォームの中でも特にフロントエンドはユーザーとの直接のインターフェースとなるため、サービスをユーザーが使える形にするという点に面白さを感じる。 バックエンド、セキュリティといった分野に関しては今まで開発経験がないが、もちろんアプリケーションの開発において欠かせないため、開発できる機会があれば学んでみたい。 --> 私は、サービス(プロダクト)を通じて人々の生活を豊かにすること、様々なアイデアや技術をサービスに落とし込み社会実装することに興味があるため、これらを共に実現できるアプリケーション・プラットフォーム開発に携わりたい。 中でもフロントエンドはユーザーとの直接のインターフェースとなり、ユーザーが実際に触れる部分を扱うため、より魅力的な体験を提供する上で非常に重要だと考えている。また、自分自身サービスを実際にユーザーが利用できる形に落とし込むという点に面白さを感じ、やりがいを感じつつ開発を進めることができた経験もあるため、フロントエンドという分野に特に興味を持っている。 もちろん、バックエンド、セキュリティもアプリケーションの開発において必要不可欠なものであるため、実務を通じて開発の経験を積んでいきたい。 ### 自身が取り組んでいる研究の内容について教えてください。研究未実施の場合は、予定であることを明記の上、現時点で取り組みたい内容を記入してください。(100文字以上、500文字以内) 研究背景:貸借取引においては、依然として取引内容の確認・約定・マージンコールといった作業が手動で行われており、非効率なステップが多く存在する。特に、海外の金融機関等との取引においてはマージンコールの実行までにタイムラグが発生してしまうことが多く、これにより、有価証券の価値の急騰・急落が生じた場合に必要以上の損失が生じるおそれもある。 研究目的:ブロックチェーンを利用することで、信用を維持したままより効率的に貸借取引やマージンコールを実行できるプラットフォームを実現できるかを日本証券金融株式会社と共同で検証する。 研究内容:私の役割は、理論上想定しているシステムが実際の価格変動などに耐え得るかを検証できるシミュレータを作成し、実際にブロックチェーンで実装する前に様々なシナリオのシミュレーションを行うことである。 実装言語・使用ツール等:Python プレス: https://www.t.u-tokyo.ac.jp/shared/press/data/setnws_202106181613585570339832_219464.pdf ### 【Q5】では、過去の技術系のアルバイトやインターンシップ等の経験について、担当した作業・役割、作業ボリューム・人数、システム構成、成果などについて具体的に記入してください。(経験時間が多い方から最大3つまで記入可能) - #### 【Q5-1-1】 アルバイトやインターンシップ、過去に就業していた会社等があれば、会社名・団体名を教えてください。また、いずれもない場合は、「特になし」と記入してください。<記入例> ○○○○株式会社/株式会社○○○○/××法人○○○○/「特になし」 株式会社CoinOtaku - #### 【Q5-1-2】 【Q5-1-1】で回答いただいた会社・団体への参加期間または所属期間を選択してください。 1年以上 - #### 【Q5-1-3】 上記期間におけるトータル作業時間について、おおよその時間で構いませんので、何時間作業されたかを半角数字で回答してください。 1500 - #### 【Q5-1-4】 【Q5-1-1】で回答いただいた経験の概要を簡潔に記入してください。 【カテゴリ】インターンシップ(業務委託) 【業務概要】運営するWebアプリ(https://coinotaku.com/) の保守開発を行っていた。 【開発人数】2~5人 【担当役割】主にフロントエンドを担当し、エンジニアが少ない時期は一部簡易なバックエンドの改修なども担当した。また、ビジネスサイドやデザイナーと相談しながら要件定義をしていくといったことも担当した。 【開発言語・技術】Node.js, Vue.js, Nuxt.js, Express.js, HTML, CSS, Pug --- - #### 【Q5-2-1】 アルバイトやインターンシップ、過去に就業していた会社等があれば、会社名・団体名を教えてください。また、いずれもない場合は、「特になし」と記入してください。<記入例> ○○○○株式会社/株式会社○○○○/××法人○○○○/「特になし」 合同会社DMM.com - #### 【Q5-2-2】 【Q5-2-1】で回答いただいた会社・団体への参加期間または所属期間を選択してください。 2週間〜1ヶ月未満 - #### 【Q5-2-3】 上記期間におけるトータル作業時間について、おおよその時間で構いませんので、何時間作業されたかを半角数字で回答してください。 150 - #### 【Q5-2-4】 【Q5-2-1】で回答いただいた経験の概要を簡潔に記入してください。 【カテゴリ】インターンシップ 【業務概要】DMMグループの様々な事業における開発で生じた issue のうち、興味のあるものに実際に対応した。 【開発人数】1~2人 【担当役割】主にフロントエンドに関わるissueに取り組み、事業部の開発担当の方に相談しつつ機能の追加、改善を担当した。 【開発言語・技術】JavaScript, Node.js, Vue.js, Ruby on Rails --- - #### 【Q5-3-1】 アルバイトやインターンシップ、過去に就業していた会社等があれば、会社名・団体名を教えてください。また、いずれもない場合は、「特になし」と記入してください。<記入例> ○○○○株式会社/株式会社○○○○/××法人○○○○/「特になし」 株式会社松尾研究所 - #### 【Q5-3-2】 【Q5-3-1】で回答いただいた会社・団体への参加期間または所属期間を選択してください。 半年〜1年未満 - #### 【Q5-3-3】 上記期間におけるトータル作業時間について、おおよその時間で構いませんので、何時間作業されたかを半角数字で回答してください。 300 - #### 【Q5-3-4】 【Q5-3-1】で回答いただいた経験の概要を簡潔に記入してください。 【カテゴリ】業務委託 【業務概要】東京大学松尾研究室の博士の方の研究(『企業の事業内容に着目した共分散行列による深層学習ポートフォリオ最適化』)の補助を行った。 【開発人数】2人 【担当役割】博士の方にレビュー・マネジメントをして貰いつつ、実験に必要なデータの収集、データベースの作成、実験用のライブラリの作成、実験コードの実装を行った。また、論文完成後にも個人的に仮説を立て、レビューを貰いながら追加実験を行っている(現在進行中)。 【開発言語・技術】Python, Docker, Poetry, cron, Selenium --- ## LINE - ### ご自身のスキルや技術力の実績(学業・研究・インターンシップ・アルバイトなど)について、アピールできることがあれば記載してください。 Githubやブログなどございましたら併せてご記入ください。(複数記載可) インターンシップ:株式会社CoinOtaku (https://coinotaku.com) にて、Vue.js、Nuxt.js、Express.js等を利用し、2〜5人のチームにおいて1年半ほどフロントエンド開発を担当した。 アルバイト:株式会社松尾研究所にて「企業の事業内容に着目した共分散行列による深層学習ポートフォリオ最適化」に関する博士研究の補助として、主にPythonを用いたデータの収集、実験のためのライブラリの作成等を行った。 研究:卒業研究では「ESRGANを利用した応力コンター画像の超解像化」について研究し、Pytorch、スーパーコンピュータシステム等を利用して実験を行った。現在は分散型台帳技術を活用した有価証券貸借取引に係る実証研究 (https://www.t.u-tokyo.ac.jp/shared/press/data/setnws_202106181613585570339832_219464.pdf) に取り組んでいる。 Github:https://github.com/maru919 - ### LINEに入社してやってみたいことと、その理由を教えてください。 私は開発を通じて様々なアイデアや技術をサービスに落とし込み社会実装することに興味があり、また単純に自分が魅力的だと思えるサービスの開発をしていきたいと考えている。したがってLINEに入社した暁には、実際に自分も使っており、多くの人に使われているサービスの開発に携わると共に、エンジニアとしても多くの知見を得ながら成長したい。