週報://

f:id:ikkitang1211:20211018001656p:plain

今週の出来事

  • 七五三があったり、両親が岡山に来たりいろんなプライベートのイベントがあった
  • 仕事で結構大きなリリースがあった

所感

七五三とかのプライベートのイベント

妻の姪っ子が7歳、自分の息子が満3歳って事で一緒に七五三の撮影をしてきた。ついでに家族写真とかも撮ったんだけど、良い家族写真になったな〜

先方が編集してくれた当日の写真のスライドショー、裏で使われている曲が 自分達が結婚式に選んだ曲で。 特に指定もしていないので、なんか運命めいたものを感じた。そのエモい気持ちを持ちながら成長した我が子の写真を見るの良い気分だった

大きなリリース

このために結構な期間頑張ってて、無事なんとか着陸できそうな感じがしている。リリースされたのは感慨深い!!

先週でスプリントも終わって、来週の月曜日 18日から次のスプリントに突入する。 今回のスプリントの振り返り会では結構有意義な アクションプランが出たし、次のスプリントからも良いチーム作りに熱心に取り組みたいな、と思う。

最近は ストック情報フロー情報 をより強く意識しながら仕事をしている。 で、自分の普段の仕事としてフローが多くて ストックが弱い。

前職のオミカレとかでは、隣りにいてもチャットで会話していた。 そのために基本的に会話ログはSlackに残っていたし、時間が無くてもそのチャットの会話ログを esaというドキュメントサービス に貼り付けてWIPで公開 ... とする事が出来てた。

今は、結構Discordで喋ってしまう文化があってそこで会話をしてしまってる。 それによって確実に成果に直結する部分はあるんだろうけど、 ストック として残す癖が今自分にない。面倒くささが勝ってしまう・・・! 多少なりとも会話ログは Slackに取るようにはしているけど、それを最終 Confluenceというドキュメントサービスに貼り付けて公開 ... までのハードルが高い( 僕にとっての UX が esa >>>>>>> Confluence だったというのも大きい) これを改善するのが次回のTry。

来週もがんばるぞ〜〜〜〜!

週報:2021/10/04

今週の出来事

  • PHPカンファレンスがありましたね (先週)
  • 輪読会の発表担当だったので担当の章をめっちゃ読み込んだ上で言語化に取り組んだ
  • こういう所が出来ていない所なんだな、という視点が芽生えた

所感

PHPカンファレンス

この辺とか

www.slideshare.net

この辺とかよんでます

blog.shin1x1.com

輪読会の発表担当だった

これが今週一番大変だった、無事終わってよかったですね。

輪読会は今の会社でやっている事で、 実践ドメイン駆動設計 本を皆で読んで各章一人の担当者が発表する・・みたいな感じです。

今回は 第四章 アーキテクチャについて発表しました。

レイヤ化アーキテクチャ ( 本ではそう書かれてた) 、 依存関係逆転の原則を取り入れたレイヤ化アーキテクチャ、ヘキサゴナルアーキテクチャについて、読み込みまくって喋ってみました。

めちゃ良い経験になってて良い。 これを使いこなせるように成長していきたいですね。

自分の伸び代ポイントを再認識した

これがぶっささった。 まずは局所的に改善・・ってやりがちで、今やってるプロジェクトとかもっと大きな視点で改善出来るようになるのが今後のキャリアに重要だなぁ・・・、という気持ち。

f:id:ikkitang1211:20211009001628p:plain

やっていかんとな。

週報:2021/09/27

f:id:ikkitang1211:20211003003117p:plain

今週の出来事

  • 仕事頑張った
    • 良いGoodの出た一週間であった
  • AWS Dev Day みてた
  • AWS の勉強をやろうと手をちょっとだけ進めた

所感

仕事頑張った

今週で 1スプリントが終わった.(第1スプリント って意味じゃなくて Xスプリント目)

今スプリントでは結構色々な働き方が出来たな〜という感じがあって、良いスプリントであった。

Sprint Backlog を前倒して、積み残されてたチームの改善タスクを進めたりとか..!!

ある程度サービスを横断してプロダクトのリリースに向けて動けたのかな〜という感じがする・

チームの改善タスクについては、結構ハマったりしたのでちゃんとブログに書いておこう。

AWS Dev Day みてた

仕事の合間にAWS Dev Day みてた

ジェネラルセッションはどれも良かったなー、、 3 Days 目のセキュリティの話とかもとても良くて、普段の視点を変えていかないとなって痛感した

タスクを後ろに倒すもの、という苦手意識があって・・でもこれは本当普段の視点を変えないといけない

後は DDD のパネルディスカッションも良きであった。

「当たり前の事を当たり前にやるのがDDDであって好き嫌いじゃない」みたいなキーワードがあったけど、この考えがとても好き。

今、自分は 実装観点からDDDと向き合う方が比率として大きいけどもっと色んな人と一緒にプロダクトを作っていけるような仕事が出来るようになりたいな、という気持ちになった。

・・ でも、 別にテックリードしてたときも 意識はしていないなりでも、DDDではあったとは思うんだけどな。

AWS の 勉強をやろうと手をちょっと進めた

speakerdeck.com

Amplifyを使いたくて何かずっとやれずじまい、みたいな感じだから、この機会にちゃんとやっておきたいんよな〜〜〜と。

Amplify を使う前に サクッと aws organizations をセットアップしてみてる。

このブログ経由で前から気になってた。 ( amplify って destroy 出来るよな? って思いつつも) テスト環境を amplify で作って諸々触った後で、organizations 毎バサッと消して全部なかった事にしたいな、っていうのが動機

blog.jicoman.info

で、もう コンソールでその辺の必須事項とかを考えたりするの面倒くさいから、この下のValidations を元に terraform でサクッと実装してみた。

dev.classmethod.jp

ついに terraform v1.0 を使ったので、優勝です。


という事で来週もがんばるぞ〜〜〜

週報:2021/09/20

f:id:ikkitang1211:20210920203749p:plain

今週の出来事

  • プライベートのプロジェクトをゴニョゴニョやってる

プライベートのプロジェクト

f:id:ikkitang1211:20210920202629p:plain

雑〜〜〜〜な感じで書くとこんな構成でプライベートのプロジェクトを作ってる。

Frontend層にNext.js / BFF層として GraphQL ( Apollo Server ) / Backend層にDjango ( Django REST Framework ) みたいな感じでおいて、 GraphQL と Django 間は GitHub Packages Registry で Githubapi-client の package をおいて使ってる。

選定理由はプライベートだから取り敢えず、使ってみたかった以上に無い(w)
BFF層にGraphQL がある理由も そこに使えそうだったから ぐらい。 一応 Djangoは慣れてて特にハマること無く書けるからぐらいに無い。 GraphQLのキャッチアップと Next.js のキャッチアップが目的。

今週、調べた事

blog.35d.jp

yarn で Github Packages Registry の Library を install するのに失敗したので読んでた

所感

  • さーーて、明日から仕事だぜ〜〜〜

週報:2021/06/07

今週の出来事

  • 現職にて、輪読会やってるよ
  • 仕事以外の時間が忙しいね

所感

現職の輪読会

現職にて、有志で集まって 上記の本を輪読会している。

毎度、発表者を決めて発表者が担当の一章分をスライドにまとめてくる。 発表後に、皆で質問を持ち寄ってああでもないこうでもない、みたいな会話をする。みたいな感じで大体 2ヶ月ぐらいかな? やってる。

これがとても実りがあってよい。 自分だけだと把握しきれない所が皆で読むから補えるし、コンテキストが共有されている状態で議論できるのって良いなって思っている。

そして、早速社内の人が ユースケース駆動開発を取り入れてめちゃくちゃ素晴らしいドキュメントを作っててすごいな・・!ってなった。

仕事以外の時間が忙しいね

色々やりたい事がある。

足りない部分もめちゃくちゃ目に付く。

がんばっていこう

今週読んだ物

ddd-q-and-a

github.com

DDD に入門している。

いや、まあDDDなのかな。 正しくは ドメインモデルパターンで コードを書いている、て感じなのかもしれない。

とにかく、ドメインモデルパターンでコードを上手く書くという事ができていないのでその辺頑張ってる。

で、調べていく内にこんなの見つけたのでこれは結構良さげなレポジトリなので、定期的にウォッチしていこうかな、という気分

ぼくのかんがえる最高のレポーティング基盤 @AWSで実践!

speakerdeck.com

スタースキーマ とか ディメンションモデリング って話を最近、会社の人に教えてもらったんだけど、これを読んでより理解が深まった。

もっと、大きな枠組みでドメインを捉えないといけない、と感じた。

こうやっぱり、最近色んな場面で 抽象度が低い目線で物事を見がちなのでもっと抽象度が高く見れるような感覚で居ないといけないな、って思ってる。ドメイン分析力とかもやっぱ低いんよなぁ、という感じ


ということで来週も頑張っていくぞ〜〜〜

ちらしの裏(TypeScript奮闘記 No.02)

ちらしの裏っぽく、TypeScriptの勉強をまとめていく〜

Objectの構造を定義するもの

type, interface, class ってやつがある。

今日はTypeをキャッチアップ

Type

正確には Type Alias(型エイリアス) って名前

type StrOrNum = string | number;

let sample : StrOrNum;

sample = 1
sample = "test"

また、前回の Interfaceのように宣言する事も可能

type Item = {
    name: string;
    price: number;
}

で、同様に使用する事ができる

const pencil: Item = {
    name: "鉛筆",
    price: 110
}

Type Alias と Interface の違い

Type Alias は Interfaceのように拡張したり、実装したり出来ないという事に違いがある

これとか腹落ちしやすかった

qiita.com

ざっくりアウトプットして後で振り返る為のブログ。 つーことで次は Class 編

ちらしの裏( Typescript 奮闘記 No.01 )

ちらしの裏っぽく、TypeScriptの勉強をまとめていく〜

Objectの構造を定義するもの

type, interface, class ってやつがある。

とりあえず Interface を勉強した

Interface

Property

interface Item {
    name: string;
    price: number;
}

Customer の Interface は name と age の プロパティを持っています。 Interfaceでプロパティを定義すると、そのInterfaceを実装するオブジェクトは 定義されたプロパティを持たなければならない。

const pencil: Item = {
    name: "鉛筆",
    price: 110
}

Interface は 型なので、別のInterfaceから参照する事もできる

interface SaleRow {
    item: Item
    total: number
}

method

また、メソッドのコントラクト的なのを定義できる。ただし、メソッドの実装を定義するものではない。

interface Item {
    name: string;
    price: number;
    getDiscountPrice(discountRate: number): number;
}
  • パラメータの型さえ同じなら、実は discountRate の部分を discountPercentage とかに変えても動く
  • でも、メソッド名を変更したり、パラメータの型や戻り値の型を変えるとコンパイルは通らない
  • 上記の事もあって、Interfaceにて メソッドを定義する場合は、パラメータ名を定義しない事も風習としてある。
interface Item {
    name: string;
    price: number;
    getDiscountPrice(number): number;
}

Option

interface Item {
    name: string;
    price: number;
    image?: string;
    getDiscountPrice(discountRate: number): number;
}

上記のように ? をつけて宣言する事で、Optionalの型を定義できる

Readonly

  • プロパティの前に readonly キーワードを使用する事で、最初に設定された後にプロパティが更新できないようにする.

Extend

既にあるInterfaceについて それを拡張して新しいInterfaceを再定義する事もできる。