2020/05/05
6分で読む
卒業学位:コンピューター・サイエンス
大学で学んだことは?
数学等の基本的な概念から始めて、「創造する」ことや「共有する」ことに興味を持つようになり、これにより、次のことを含む4年間の長い旅に備えることができた:
データ分析
ソフトウェア開発
ウェブデザインと開発
アルゴリズム設計
ネットワーキングとサイバーセキュリティ
データベース管理
オペレーティングシステム (Linux)
小規模プロジェクト:フルスタックウェブ開発
概要:
視聴した映画やゲームを追跡し、自動的に視聴したコンテンツを更新するウェブサイトを開発しました。
技術とその使用:
HTML、CSS、JS → フロントエンド開発 (UXおよびUI)
Django、MongoDB → データ収集と保存のため
NodeおよびReact JS → バックエンドAPI呼び出しとデータ表示のため
実装:
ユーザーは視聴またはプレイを終えたメディアタイトルの名前を入力する。その後、IMDBの映画、MyAnimeListのアニメ、SteamのPCゲームなどの人気データベースからのAPIが関連データを取得し、ユーザーの好みに基づいてMongoDBに保存する。この情報は、Bootstrap(HTMLおよびCSS)でスタイリングされ、追加のアニメーションや機能のためにカスタムコードで強化されたインタラクティブなウェブサイトに表示される。
Pythonライブラリ「PywinAuto」が後に統合され、ユーザーのコンピュータでバックグラウンドでメディアの再生を自動的に特定し、手動入力の必要がなくなった。
主要プロジェクト:Mozilla Firefoxドキュメントツリー開発
概要:
Chromeの次に使われる2番目のブラウザであるMozilla Firefoxの公式ドキュメントツリー全体を開発しました。
技術とその使用:
Flask、Django → バックエンド機能およびコンテンツルーティングのため。
Kuma → MDNプラットフォームを動かし、ドキュメント構造を管理するカスタムウィキエンジン。
ElasticSearch → 高速で正確な検索機能のため。
Git、GitHub → バージョン管理および共同貢献のため。
REST API → ドキュメントデータへのプログラム的アクセスのため。
コンテンツ管理システム (CMS) → ドキュメントツリー内のコンテンツの整理と構造化のため。
実装:
Markdownを使用してコンテンツを作成し、整理のためにYAMLでメタデータを管理しました。次に、編集と構造管理を容易にするためにKumaエンジンをセットアップしました。その後、ユーザーフレンドリーなフロントエンドのためにHTML、CSS、およびJavaScriptを実装し、高速検索のためにElasticSearchを統合した。
コラボレーションを促進するために、バージョン管理のためにGitおよびGitHubのワークフローを確立した。Node.jsとWebpackでパフォーマンスを最適化し、機能を確保するために自動テストツールを使用しました。最後に、プログラム的なアクセスのためにREST APIを作成し、すべてを堅牢なコンテンツ管理システム (CMS)内で整理した。