RyotaSUENAGA
I'm a software engineer living in Tokyo. Also a jumper.
Working Experience
M3, Inc.
Software Engineer 2021/04 -I'm in charge of developing a cloud-type Electrical Medical Record system.[Technology] Ruby on Rails, React, TypeScript, Scala, PostgreSQL, AWS, GitLabBuildit
Part-time (working-student) 2019/04 - 2019/10I was in charge of developing a frontend of a web service written in React as a freelancer.[Technology] React, GraphQL, GitHubCYDAS
Part-time (working-student) 2018/12 - 2021/4I was in charge of backend and frontend development as a freelancer. I was in charge of developing an in-house tool to manage database easily.[Technology] Golang, Vue.js, GitHubSUPINF
Part-time (working-student) 2017/05 - 2018/05I was in charge of Backend/Frontend of an SPA web application which is a business communication/task management tool.[Technology] Ruby on Rails, Vue.js, RSpec, vue-test-utils, swagger, JWT, REST, CircleCI, GitHubCrowdWorks
Long-term Internship 2016/05 - 2017/3I was in charge of Backend development. The main project I was in charge of was implementation of Messanger-like desktop notification by Serviceworker.[Technology] Ruby on Rails, jQuery, Vue.js, RSpec, CircleCI, GitHubWantedly
Short-term Internship 2016/12 - 2016/12I was in charge of Backend development. The main project I was in charge of was implementation of Messanger-like desktop notification by Serviceworker.[Technology] Ruby on Rails, React, RSpec, GitHubSkyBall
Part-time (working-student) 2016/04 - 2016/06I was in charge of Backend development of Soccer Channel.[Technology] Ruby on Rails, Heroku, jQuery, GitHub
Education
Meiji University MIMS Network Design
Master's degree (Engineering) 2019 - 2021[Technology] ROS, Autonomous mobile robot
Projects
tiny-idp
asmsuechan/tiny-idpDeveloper 2024/02 - 2024/03OpenID ConnectのID Providerを標準ライブラリ縛りでフルスクラッチし、作り方を説明と共に連載記事にしました。1週間のヨーロッパ一人旅中にドラフトを作り、3回ほど作り直して記事の形に落とし込みました。今までRFCをあまり読んでこなかったのですが、この実装では最終的に一番分かりやすい資料はRFCであることに気づいてずっとRFCと睨めっこしていました。今まで曖昧だった知識を短期間で補完できて非常に満足しています。標準ライブラリ縛りプログラミングは楽しい。2024年6月に開催された技術書典16にも出しました。[Technology] TypeScript, OpenID Connect, OAuth2.0traqqer
traqqer.appDeveloper 2023/02 -Flutter製のモバイルアプリです。陸上競技の練習ノートの効率化のために作りました。完全な個人開発ではなく、営業をしてくれる人(リーダー)とデザインを作ってくれる人の3人チームで開発を進めています。私は開発の全てを担っています。バックエンドはGo言語で書いており、GCPのCloud Runで動いています。[Technology] Flutter, Go, Firebase, GCP, GitHub出身研究室HPの大幅リニューアル
GraphQLとFargateやめましたDeveloper 2022/01 - 2022/02私が作成した研究室HPは当初ECSで稼働していたのですが、月に2万円程度とそこそこお金がかかっていたのが気がかりでもっと低コストで運用できるように勝手に改造しました。HerokuとVercelに載せ替えることで月々のコストは3000円程度まで抑えられるようになりました。ついでにVercelに載せるにあたってNuxt.jsからNext.jsへ書き換えました。サーバーサイドもNode.jsのGraphQLサーバーからGo言語のREST APIサーバーに置き換えました。[Technology] Next.js, Go, Vercel, Heroku, REST API, Algoliaminute
asmsuechan/minuteowner 2021/06 - 2021/08minuteは軽量なマークダウンパーサです。アルゴリズムの実装から考えてなるべく処理が軽量になるよう実装しました。TypeScriptベアメタルな実装で、他のライブラリへの依存はありません。マークダウンパーサを自作する界隈ではよく引用されるようになりました。[Technology] TypeScriptqueick
asmsuechan/queickOwner 2020/11 - 2020/12queickは軽量なインメモリのジョブキューライブラリです。下記の研究室入退室管理システムを作っている最中にリトライ制御などをしたくて作りました。queickは全てPythonの標準ライブラリのみを使って書かれています。なおこのライブラリについてPyCon Taiwan 2021で発表しました。[Technology] PythonKaggle Note
Kaggle NoteOwner 2020/11 -Kaggle Noteはデータ分析系のブログサイトです。hugoで静的生成するブログで、GitHubにマークダウンファイルをコミットすることで自動でデプロイされます。ホスト先はGitHub Pagesです。SEO的にもそれなりにこだわっており、検索順位が上位に出るよう軽量化したりAMP対応したりしました。いくつかのページは検索で上位に出てきます。更新は主に研究室の同期くんが行ってくれています。[Technology] hugo, GitHub Pages, AMPEntranceMaster
研究室入室管理システムを作ったDeveloper 2020/07 - 2020/07最近研究室の入室記録を取らなければならなくなったので、Slack連携入退室記録システム作った。入室時と退室時に学生証タッチしたら退室時に記録用チャンネルに投稿される。 pic.twitter.com/Rc4SOemxxg
— asmsuechan (@suenaga_ryota) July 15, 2020修士課程時代にコロナが到来。研究室の入退室の記録を取るよう指示されました。学生証にNFCタグがついているので、それを使って入退室の記録を取るシステムを作りました。お遊びですが便利に使われていて楽しかったです。[Technology] Python, Raspberry Pi, Slack API, NFCRowma
rowma/rowmaOwner 2019/05 - 2021/03Rowma is a robot management system for robot developers. 修士の研究としてRowmaというロボット関連のシステムを作りました。ROSロボットのトピックをインターネット経由で送受信できるもので、JavaScript(TypeScript)、Kotlin、PythonでSDKを提供しています。これによりデスクトップ環境だけでなくモバイル端末でもROSトピックを取り扱うことができ、ロボットと他のデバイス・ロボット同士での接続を容易に行うことができます。サーバーはECSで動作しています。[Technology] WebSocket(socket.io), TypeScript, Kotlin, React, ROS, PythonLab Homepage
研究室のHPをサーバレス、SPA、GraphQL、ChatOpsで作ったDeveloper 2018/11 - 2018/11Slack botで更新するHPをフルサーバレスで作成しました。[Technology] serverless, dynamodb, Vue.js, Nuxt.js, GraphQL, Slack bot, travis-ci, chatopsSoramy
Owner 2018/09 - 2018/09— asmsuechan (@suenaga_ryota) November 27, 2018
「風景画像を投稿する」というコンセプトSNSアプリを作りました。(クローズ済み)[Technology] react-native, Auth0, AlibabaCloudBoostnote
BoostnoteComitter 2017/01 - 2018/01BoostnoteというOSSメモアプリのメンテナでした。それなりのユーザー数がいるソフトウェアでしたが好き勝手にいじってたまに壊していました。コードを書くだけではなく広報用にブログを書いたりLTをしたり、ユーザーインタビューをしたりしました。メンテナをやっている時に何度かGitHubのトレンドに入りスター数が急増し、ジョイン当初700程度だったスター数が1年後に5000を超えていました。悲喜こもごもあり楽しかったです。思い出のあるソフトウェア、開発経験になりました。[Technology] Electron, Reactever2boost
ever2boostDeveloper 2017/02 - 2017/02EvernoteのノートをBoostnoteにインポートするためのever2boostというツールを作りました。[Technology] RubyGenkan
GenkanOwner 2018/03 - 2018/03— asmsuechan (@suenaga_ryota) November 24, 2018
趣味でGenkanというスマートロックシステムを作りました。デバイスはRaspberry Pi Zeroを使い、メカ部分はFusion360でモデリングして3Dプリンタで刷りました。デバイス制御ソフトウェアはGolangで書いて、react-nativeで作ったスマホアプリから操作できるようにしました。MQTTを送受信してトリガーとしています。[Technology] react-native, Golang, MQTT, Servo Motor, TravisCI, Fusion360, 3D Printerjquery_push_notification
jquery_push_notificationOwner 2016/07 - 2016/07I developed a jQuery plugin that displays a push notification on the screen easily.[Technology] jQuery
Presentation
PyConTaiwan 2021
Queick: A simple job-queue system for Python-上記ProjectsにあるqueickというPython製の軽量ジョブキューライブラリについて発表を行いました。台湾のカンファレンスだったのですが完全オンラインで狭い自室から発表しました。台湾行きたかった。[Technology]Developers Boost 2019
アメリカでWeb開発者として就職活動をした話-アメリカに行った小噺をしました。盛り上がりませんでした。[Technology]
Activities
DeNAサマーインターンシップ プロダクト開発コース
「課題を見つけてエンジニアリングせよ」実務レベルのインターンシップで僕らが学んだこと2019/08 - 2019/08DeNAの3日間で10万円もらえるインターンシップに参加しました。ほとんど徹夜だったり全然実装うまくいかなかったりスピードテストしてたりで忙しかったです。ご飯がとてもおいしかった。[Technology]シリコンバレーワークショップ
2016/03 - 2016/03リクルート主催のシリコンバレーワークショップというのに行ってきました。サンフランシスコに10日間連れて行ってもらいました。あの頃の記録はもうインターネットのどこにも残っていないような気がするのが少し悲しい。[Technology]
Awards
SIGNATEの機械学習コンペでブロンズメダル
SIGNATEの機械学習コンペでブロンズメダル2020/11 - 2020/11学生コンペで良くも悪くもない結果でした。機械学習未経験にしてはよくやったと思います。機械学習やコンペに対する学びが大きかったです。[Technology] Python, Transformer, PyTorchSI優秀講演賞
SI2019で優秀講演賞をいただきました2020/02 - 2020/02上記Projects中にあるRowmaのベースとなるシステムを学会で発表し、賞をいただきました。いい思い出になりました。[Technology] ROSAlibaba Cloud MVP
MVP Page2018/09 - 2020/09アリババクラウド関連の使ってみた系の記事をたくさん書いたりコミュニティで発表したりしていたら賞をいただきました。[Technology] Alibaba Cloud