職務経歴
職務経歴
Web自社サービス系 (2019/7 ~ 現在)
サーバサイドエンジニアとして入社
2021/10から以前より希望していたSREチームに配属されてSREとして勤務している
インフラ(AWS)、監視、CI/CDなどの面倒を見ている
やったこと
SREチームに異動してから
Datadogの設定調整、監視アラートの追加
アラート対応を不要にするための設定修正、リトライ処理の追加、アプリケーション改修
node12からnode16へアップグレード
terraformガイドラインの整備
GitLabCI実装ガイドラインの整備
GitLabCIの実装コストを下げるために汎用的に使えるCIテンプレートの作成
GitLabCIのCIジョブの起動トリガーの見直しによる、CI実行回数の最適化
AWS SecurityHubの指摘対応
重いSQLの調査、チューニング
サービスの自動復旧ツールの設計、実装
Ansible
Terraform
負荷試験環境の設計
renovateの導入と依存パッケージの定期的な更新のための運用設計、実装
Nodeプロジェクトの未使用パッケージの自動検出のCI導入、及び未使用パッケージの削除
M1 Macでローカル開発環境が動作するように調査・修正する対応
脆弱性管理運用設計・実装
SOC2、ISMAPの対応、自動化、効率化
チームをまたいだISMAP対応の運用フロー設計
必要な資材を収集する手順書・スクリプトの設計と実装
既存システムのシステム構成、ネットワーク構成、デプロイ基盤のドキュメント化、及び新入社員用のオリエンテーション資料の作成、オリエンテーションの実施
システム構成図のドキュメンテーション技法について社内勉強会で登壇
CloudFormationを使ったデータベース復旧訓練環境、および手順の作成と運用の整備
SREチームに異動する前
プレスリリースされたプロジェクト
新規サービスの全体インフラ設計と実装
エンジニア、デザイナー含めると約20名のプロジェクト
インフラはほぼ一人で担当
属人化の懸念があったので資料整備にも注力
SREにはレビューしてもらうなど細かい相談はしつつ
AWS Terraform
CI/CD GitLabCI
監視 Datadog
内部用資料整備、運用手順書整備、SLO策定
ローカル開発環境構築
dockerまわり
airを導入してホットリロード環境を構築
簡易の負荷試験の設計、環境構築、実施 jmeter
少しだけアプリの実装 Go
新規サービスの内部処理用のアプリケーションライブラリ設計、実装
5名ほどのプロジェクト
Go
新規サービスのインフラの設計と実装
4名ほどのプロジェクト
AWS FargateとCloudWatchEventによるバッチ処理がメイン
外部の企業とも提携しており、仕様調整・提案とかのコミュニケーション等もした
AWS Terraform
CI/CD GitLabCI
監視 DataDog
バッチの実装 Go
その他の細々
アプリケーション改修 Go Revel Vue.js TypeScript JavaScript
社内業務システムの改修 Go Vue.js TypeScript Javascript
GitLabCIパイプラインの作成・自動化・高速化
shfmt, shellcheck, black,を導入してCIで自動テスト
自動テスト用パイプラインの作成
モノレポ化に伴うCIパイプラインの最適化、高速化、リファクタリング、パイプライン分割
1テストあたり数分~十数分の高速化
不要なCIジョブの起動数の大幅削減
メンテナンス性の向上
swaggerをWebUIで見られる環境の構築
インフラがすべてコンテナ化されることに伴う、DBマイグレーション環境の構築
AWS CodeBuild Terraform
監視のされていないサーバへの監視導入
DataDogのカスタムメトリクス作成
開発環境の整備
Ansibleでのプロビジョニング設定の作成
顧客からの問い合わせ対応・調査
セキュリティチェックシートの記入・調査
障害対応
ドキュメントの整備
顧客からの問い合わせ対応用資料の作成、整備
オンボーディング資料の作成
新規サービス構築時の設計書作成(シーケンス図、システム構成図、詳細設計など)
障害対応手順の作成
新入社員向けの資料作成
業務改善
運用フローの定まっていなかった業務をSlackワークフロー化
Google Apps Scriptで自動化
技術情報の調査、検証、共有
Web系SIer (2017/4 ~ 2019/4) (新卒入社)
業務アプリのテスター
AWS上の金融システムの保守運用 (Java)
運用作業の自動化、効率化スクリプトの作成
Go製バッチ処理の実装
AWS上のシステムのシステム移行の調査、インフラ実装、テスト
所持資格
保持してる資格
スキルセット
アプリ
go
revel
echo
java
spring
struts
maven
gradle
javafx
kotlin
bash
nim
python
node.js
vue.js
react.js
TypeScript
docker
インフラ
AWS
Terraform
Terraform Cloud
CloudFormation
ansible
Serverspec
itamae
jmeter
監視系
datadog
grafana
prometheus
CI
GitHubActions
GitLabCI
travisci
jenkins
個人活動
GitHub
https://github.com/jiro4989
Webアプリの自作、保守運用
Webでシェルを実行するwebshを作った
webshでやったことまとめ
NimでSlackBotを作った (nimbot)
開発環境のコード管理
開発環境をDocker上に閉じるようにした
Go
textimg ANSIエスケープシーケンスを判定して画像ファイル出力時の色に反映する
ojosama テキストを壱百満天原サロメお嬢様風の言い回しに変換する
Nim
自作
websh
faker
nimjson
wave
公式リポジトリにもPRだしたりした
https://github.com/nim-lang/nimforum/pull/257
https://github.com/nim-lang/Nim/pulls?q=is%3Apr+author%3Ajiro4989+is%3Aclosed
Nim 1.0リリースに向けた大規模な標準ライブラリのドキュメント整備のIssuesに参加した
この時に結構たくさんMRを出した
変更行数がそれなりにあるせいか、2022/5/23 時点で実は自分のアイコンがのってたりする
https://gyazo.com/e5ac17994f20783bc46a85de6a586805
https://github.com/nim-lang/Nim
Java (JavaFX)
2016年にJavaFXで作成したツール(TKoolFacetileMaker2)のリファクタリングをした
その他はJavaFXリンク先参照
Kotlin
TKoolFacetileMaker2 最初はJavaで書いたけれど途中でKotlinに移行した
Javaで書いたGUIツール(TKoolFacetileMaker2)をKotlinで書き直した
Rust
teipというコマンドにPRをだすのだけやった
https://github.com/greymd/teip/pull/14
CI
GitHubActions
Actionsを自作したりしてる
NimのGitHub Actionsを自作した
自作したsetup-nim-actionをフォーラムで告知したり
いつのまにか公式WikiのCIシステムの例に記載されてたり(僕が書いたわけではない)
実行可能ファイルをWindows向け、Linux向け、Mac向けにクロスコンパイルする実装例を載せたり(こっちは僕が書いた)
色々あってNim用のGitHubActionsの中でそれなりにシェアがある方だと思う
まぁよくあるsetup-**を誰も作ってなかったとこに僕が最初に作ったからシェアが伸びただけとも言う
Nimのコードを静的解析してGitHub PullRequestに通知するGitHubActionsを自作した
debianパッケージを作成するGitHubActionsを作った
rpmパッケージを作成するGitHubActionsを作った
たまに気になるOSSにCI導入のPRをだしたりする
https://github.com/HugoGranstrom/symbolicnim/pull/2
https://github.com/can-lehmann/owlkettle/pull/15
他にもいくつかあるけれど全部あげだすときりがない
dependabotを入れて依存パッケージが古くならないようにする
TravisCI
静的解析を導入したときのPR
勉強会
event
シェル芸勉強会
他にも色々あるので自作参照
ここにも載ってない奴もあると思う
得意な領域
自動化・効率化
自分ひとりが頑張ってパフォーマンス上げるより、チーム全員の効率化をはかったほうが生産性が上がる
ルーチンワークや手動のオペレーションはなるべく自動化したほうが本来やりたいことに集中できる
仕事でもプライベートでもCIの面倒を見ていることが多い
インフラ
AWSのIaC
OS上のミドルウェアのセットアップ、操作、オペレーション
物理機器のセットアップを業務でやったことはない
シェル
自称シェル芸人
シェルは保守性が下がりやすいので業務ではあんまり書かないほうが良いと思う
最近はdockerやらCIやらでシェル書く頻度が増えているが
仕事で大事にしてること
ホウレンソウ
仕事は一人でやるものではないので、報告・連絡・相談はとにかく大事にしてますし、後輩にも必ず言います
特にマズイ時ほどホウレンソウは大事なので、兎にも角にもホウレンソウ
また、誰からもホウレンソウされやすい人としてあろうと意識してます
あらゆる人への敬意と尊重を持つこと
人によって得手不得手はあるものなので、自分の方が得意なこともあれば、自分の方が不得意なこともある
故にコミュニケーションにおいて互いに尊重しあうこと、敬意を払うことを大事にしています
それが雑談であれ、コードレビューであれ、誰かが障害を起こしたときであれ、常に敬意と尊重を忘れないように考えています
人は必ずミスをするものなので、誰かがミスをすることもあれば、自分もミスをすることもあって、それは当たり前のことです
故に障害などの有事の際にこそ他者を敬うようにしています
将来のキャリア
SREを目指してます(2020/4)
社内のチーム異動によりSREになりました(2021/10)
サイトの安定性を高めて、自動化をどんどん進めてSREの手がかからずに開発と運用が回るようにしていきたい
その他
高校生まで書道やってました
子供の部ですけれど以下までいった記憶
毛筆 特待生
硬筆 模範生
最近文字を書く機会が減ったのでだいぶ忘れてしまった...