転職から1年が経った

this.aereal.org this.aereal.org 所属組織についての感想とか意気込みみたいなのは社内のesaに書いたので、転職体験に関する個人的な感想を書く。 意外とやれている気がする ノンバーバルコミュニケーションなどに重心があった人々は、特に最近限界を迎えた…

生きているのならシェルスクリプトにだってなってみせる、そうPerlならね

シェルスクリプトを書くのをやめる - blog.8-p.info これを見て: 夢の可能性が高くなってきたんですが、Perlのプラグマかなにかで、シェルスクリプトと混在できる……というか、存在しないサブルーチン呼び出しを外部コマンド呼び出しにするやつありませんでし…

prpl: AWS SSMパラメータストアの値を環境変数に設定するツールを作った

github.com 作った。 prpl = parameters pull toolです。 使い方 go run github.com/aereal/prpl/cmd/prpl -path /app/staging env こういう風に使う。 -path はパラメータストアのパラメータパス。このパス以下のパラメータをすべて取得し、環境変数として…

ISUCON 11予選に参加して敗退した

id:karupanerura と id:Sixeight とチームを組んでISUCON 11予選に参加した。 再試験スコアは25746点、ベストスコアは記録をちゃんと残せてなかったけど3万ちょっとくらい。去年の思い出: ISUCON 10の予選に参加しました - Sexually Knowing使ったリポジトリ…

injecuet: CUEに環境変数を注入する便利CLIツールを書いた

CUEとは CUEはJSONやYAMLのスーパーセットのような構文を持ちながら、データ・スキーマ検証などが行える言語のこと。 KubernetesのYAML生成にも使われているそう (そのシーンで使ったことはない)。 軸となるコンセプトはTypes are valuesと表される。言い換…

自動車教習所の学科教習のスケジュールを立てるのに便利なSPAを作った

教習スケジュール ちょっと前から普通自動車免許を取ろうと思い立ち教習所に通いはじめた。 技能教習はWeb上から予約できて、基本的に順番にやっていくだけなので難しいことはない。 問題は学科教習で、月ごとにスケジュールが配布されるのだけれどもExcelで…

OpenAPI定義に沿ってバリデーションをしてくれるGoのライブラリを書いた

Go

GitHub - aereal/go-openapi3-validation-middleware: net/http middleware to validate HTTP requests/responses against OpenAPI 3 schema using kin-openapi. kin-openapiというOpenAPI 3定義を読んでリクエスト・レスポンスのバリデーションをしてくれる…

as a builder

ソフトウェアエンジニアリングやると究極的には一行もコードを書かなければバグが混入することもないしなっていう気持ちになることがある。 それはテコを効かせるエンジニアリングの考え方として理に適っているので納得している。 早すぎた最適化とかは「や…

言葉を尽くす

大抵の誉め言葉を嬉しいとは感じない。どれもこれも社交辞令に聞こえる。なぜ社交辞令に聞こえるかといえば、着眼点がずれていたり、解像度が低かったりするから。 これも本当にズレている・見えていないだけのこともあれば、当人の認識は的を外していないけ…

株式会社はてなに入社しました

株式会社はてなに入社しました。半年ぶり3回目になります。 前回: 株式会社はてなに入社しました - Sexually Knowing 参考: 株式会社はてなに入社しました - hitode909の日記 お知らせ 4月1日はエイプリルフールです

入社以来未だオフィスに踏み入れていない自分の転職とオンボーディングについて

前回までのあらすじ 転職した: 新しい職場で半年経った面接を受ける1年前 (2019年初頭) にカジュアル面談に行った時にオフィスを訪れて以来、面接から入社後に至るまで自分は一度も現職のオフィスに踏み入れていない。 転職から入社 転職活動 新しい職場を決…

DDD is overratedについて

DDD is Overrated | Stefan Tilkovについて。 DDD is overratedの自分なりの受け取り方 DDDだけが設計手法や考えではないんやで 必要なら(DDDにおけるaggregateやvalue objectのような)概念に対する名前を自分たちで付けてもええんやで 自分の考え 筆者が言…

新しい職場で半年経った

from: 株式会社はてな 退職エントリ to: 株式会社Classi 社の開発者ブログに書いたエントリ 決め手 やっていること・やりたいこと チーム・機能横断の基盤システムの設計と開発 開発者ブログの編集長業 プロダクトチームに出向しての草の根活動 事前の印象と…

Google Formでお手軽に自分のヘルスチェックをしてみる

気分によってパフォーマンスが左右されるな〜と数年前くらいから自覚するようになり、自分の生産性とどういう相関があるのか・ないのかを知りたいと考えた。 生産性は普段の仕事のアウトプットで評価すれば良いだろうから、あとは気分を記録すれば良いだろう…

2020の振り返り

去年 作ったもの aereal/cdk-dynamodb-expression: DynamoDB expression builder for AWS CDK TypeScript (AWS CDK) tagged template literalでDynamoDBの式を書いたらexpressionとexpressionAttribute{Name,Value}を返す aereal/go-dynamodb-attribute-conv…

たいへんな仕事は仲間を募ると良い

重い仕事・比較的やりたくない仕事・とっかかりが見つからない仕事など、アサインされたけれどどうにもやる気が出ない仕事に出くわすことはしょっちゅうあると思う。 そういう時におすすめしたいのが「誰か一緒にやりませんか」とペアプロ・ペア作業相手を募…

Re: ネットワーク越しリトライ考

moznion.hatenadiary.com サーバが脆弱という意味では弱者だけれども、一方でreadinessとかの豊かな情報が欠けているという意味ではクライアントもか弱い存在で、このミスマッチが根本的に問題を難しくしていると思う 素朴なモデルだとクライアントは自身で…

ひどい目に遭いそうなところからテストを書く

blog.sushi.money 僕も最近は正常系から書くことが多いです。こうすると悪い設計に早く気付きやすいという利点があると感じています。 ここでは単体テストのような開発者向けのテストを想定していて、E2Eテストのようなテストでは必ずしも当てはまらないでし…

AWS CDKやGo関連で最近作ったものたち

cdk-dynamodb-expression aereal/cdk-dynamodb-expression: DynamoDB expression builder for AWS CDK AWS CDKでDynamoDBの式を書く時に便利なグッズ。 usageより: import { DynamoAttributeValue } from "@aws-cdk/aws-stepfunctions-tasks"; const builder…

やたらと短いエイリアスは使わない

Gitもシェル (zsh) もよく使うコマンドをエイリアスとして設定して任意の入力で呼び出すことができる。 このエイリアスについていくつか派閥があると感じていて、おおまかには: エイリアスをまったく使わない 入力の手間を減らすため極限まで短いエイリアス…

組織をプロダクトと捉えてみる

※組織の話は詳しくないので自信はないけれど、こう思ったという話を書きます ※現在の所属組織の社内ブログに書いた内容を一部修正して転載しています プラットフォームのプロダクトマネジメント メルカリのSREであるdeeeetさん (eは4つ) のこの記事が良かっ…

AWS API Gatewayのdocumentation partに関するメモ

Documentation part AWS API GatewayのREST APIはOpenAPIに準拠したドキュメントの生成もサポートされている *1。API GatewayのREST APIはリソースやメソッドなどの部品から成る。特別な定義なしでも、これらAWS上のリソースが持つ各種プロパティからデフォ…

ISUCON 10の予選に参加しました

id:masawadaとid:side_tanaと一緒にはやいTシャツ屋さんで参加しました。初期スコアが最高スコアでした。察してください。 チームでやった主なこと: New Relicの導入 Web Transactions SQL Logs デプロイ自動化 デプロイするたびにNew Relicのdeploymentsを…

AWS CDKとは何か、IaCの変遷を踏まえての紹介

概要 これまで業務・プライベートの双方でAWS CDK (Cloud Development Kit)というInfrastructure as a CodeツールをDeveloper Previewのころから着目し利用してきたので、その特徴を競合と比較しながら説明します。 概観を掴んでもらうことを目的とするので…

最高のアーキテクトになる

が、今後5年のテーマかなーと思いはじめた。ここでいうアーキテクトは「ソフトウェアの誕生から運用を通したライフサイクル全体を通して良い感じにするためにあらゆる手を尽して準備する役割」くらいの意味で言っている。 「ひどい目に遭わないよう準備する…

各チームの大小様々なやっていることを共有する会をやったら予想外に盛り上がった話

前職で掲題のような取り組みを提案して始めてみたら予想以上に盛り上がったので書いておく。かなり低コストに始められるので以下に書くような課題感を持つところではおすすめできると思う。 どんな会か 会の名前は「今月のホットトピックス」と銘打った。前…

go-sql-caller-annotation: GoでSQLに呼び出し元の情報をコメントとして埋め込む

Go

github.comというのを書いた。ご利用ください。スロークエリを解析する時に「このクエリ、アプリのどこから呼んでいるんだろう?」と調べたいことがよくある。 だいたい遅いクエリって長くて複雑だったりするのでいちいち横に縦にスクロールして全容を把握し…

退職する時に同僚からフィードバックをもらう

退職するにあたって、人事評価とかそういった枠組みをすべて取り払って去る自分に対して言い残したことがあれば伝えてほしいなと思い、自分がどう見えていたかをGoogle Formによるアンケートというかたちで同僚に乞い、ありがたいことにたくさん送ってもらえ…

心配ゴム用 (^ω^)ニニニニニつ ビヨーン

gyazo.com const buildBiyon = (max) => { let incr = 1; let count = 0; return () => { if (count === 1) { incr = 1; } if (count >= max) { incr = -1; } count = count + incr; return "ニ".repeat(count); }; }; (() => { const biyon = buildBiyon(5)…

Kiritoru: 見ているページをScrapboxでブクマをAndroidの共有メニューから簡単にできるように

scrapit.vercel.app……というのを作った。ソースコード: GitHub - aereal/scrapitblog.sushi.moneyPCのブラウザではこういうブックマークレットでブクマしている一方、Androidで見ている時にぱっとやる方法がなくて、ブラウザのブックマークに入れておき後でP…