空飛ぶたまごエンジニアスマートフォン用の表示で見る空飛ぶたまごエンジニア韓国進出を夢見るエンジニアのブログこの広告は、90日以上更新していないブログに表示しています。登壇させていただきました。サブスク決済してよかった話」というタイトルで発表しました。スライドはこちらです。発表したことを文字で起こした記事となります。要点だけを知りたい方はスライドをご覧ください。日本で利用するユーザのコミュニティです。登壇をさせていただきました。公開されているようです。詳しい説明は公式サイトをご覧ください。私が所属する会社のサービスでは、サブスクを提供しています。画面から手動でサブスク継続処理を実行していました。軌道に乗りはじめ、スタッフから嬉しい悲鳴が...サブスク機能をリリースしてから、嬉しいことに契約者が増えていきました!しかし、サブスク契約者が増えるのに比例して、スタッフが手動でサブスク継続処理を実行する手間も増えていきました。求める声があがります。ない他のオンライン決済サービスを使用していました。そのオンライン決済サービスには、サブスクのサービスが提供されていなかったため、サブスク自動決済機能を実装しようとすると、全て自前で用意する必要がありました。そのため、対応するコストが非常に高く、判断に迷っていました。管理画面のバージョンアップまた一方で、サブスク契約者が増えてきたので、サブスク契約者の予約状況なども管理画面に表示してほしいといった要望も上がりました。ひとつひとつの要望への対応コストはそこまで高くありませんが、今後要望があがるたびに機能追加していくとなると、メンテナンスコストが高まります。悩めるエンジニアに決済サービスクローズの追い打ちスタッフの要望にどう対応しようか悩んでいたある日、当時利用していた決済サービスがクローズするというアナウンスがありました。いう状況になってしまいました。導入すれば悩みの種となっていたサブスク周りの課題も一緒に解決しそうなことがわかり、移行が行われました。サブスク自動決済機能を自前で用意する必要がなくなりました。管理画面も自前で用意する必要がなくなりました。そのおかけで、将来かかったであろう管理画面のメンテナンスコストも実質なくなったことになります。自前で用意してメンテナンスしていく必要もなくなりました。導入してよかったと思えることです。移行したときのより詳しい話については、私が所属するチームのリーダーが記事にまとめていますので、そちらをご覧ください。足りないと感じました。相手の伝えたいことをしっかりと理解することが小学生の頃から苦手で、今に至るまで逃げて生きてきました。(今思えば国語の点数はずーーっと悪いままでした)文字を読むのも苦手ですし、人の話を聞いて「つまり、〜〜〜ということ」と要約するのが苦手です。いつも途中で何について書いているのか、話しているのかわからなくなります。文章を読んで理解するのは苦手だったり、人の話を聞いてまとめることが苦手だったりするからです。文字アレルギーの克服から!私は文字と向き合うことから、ほとんど逃げてきました。本も指で数えるほどしか読んだことがありません。(ちょっといいすぎかもw)しかし、このままでは学べるものも学べず、成長スピードが遅いままです。伸ばして、成長スピードを向上させようと思います!そこで、先週末に6つの小説を購入しました。純文学など難しそうな本に挑戦すると、あっという間に挫折しそうだったので、まずはライトな小説から挑戦しようと思いました。ちなみに私が購入した小説はこちらです。endend大事なのは、リファクタリングによって直接変数アクセスも関節変数アクセスにも切り替えることができること。trueオブジェクト導入時は、イミュータブルな値を持つ単純な値オブジェクトという位置付けだったけれども、後で変更可能なデータが追加したり、概念的に同じオブジェクトを参照する部分に変更による効果を与えたくなる場合がある。いった場合に上記のように、ファクトリメソッドを定義し、オブジェクトの作成処理を管理するようにして実装する必要がある。単純な値オブジェクトから参照オブジェクトに変更しなければならないということである。イミュータブルな参照オブジェクトの管理が面倒になってきた時に、オブジェクトを値オブジェクトに変更することで、管理コストを下げることができる。メソッドをオーバライドする必要があるので、注意が必要。調べたこと値オブジェクト以下のような特徴を持ったオブジェクトを「値オブジェクト」というインスタンス自体よりも、保持するデータ値が重要な意味をもつ。インスタンスが異なっても、同じ値を保持していれば同じオブジェクトとみなす。必要に応じて自由にコピーを作ることができる。原則としてイミュータブルでなければならない。参照オブジェクト以下のような特徴を持ったオブジェクトを「参照オブジェクト」というインスタンス自身が重要な意味をもつ。同じデータを持っていても、インスタンスが異なれば違うオブジェクトと見なす。通常コピーは作らない。イミュータブルでなくてもよい。テーマに、リファクタリングのテクニックがまとめられている。全部で6つのテクニックが紹介されている。以前までは正しかった実装が、今では誤った実装になりうる仕様が変われば、リファクタリングで実装し直せばいいだけ問題は誤った実装のまま、何も対策を打たないこと所感フィールドは最もよく使われているクラスに定義することで、コード量が減ることを実感。コード量が少なくなれば、それだけ人間が読むコードの量も減るし、結果的に効率的な開発に繋がるのだろうと思った。テーマに、リファクタリングのテクニックがまとめられている。全部で6つのテクニックが紹介されている。コンパイラ言語ではないので、テストが命綱になる所感メソッドは、最もよく使われているクラスに定義するということを、恥かしながら最近知った。考えればわかることではあるが、他クラスのオブジェクトを参照しなくてもよくなるし、他クラスの実装も見に行ったりしなくてよくなる。結果的に効率よくコードがかけるようになるなと実感した。インタープリタ言語であり、リファクタリング後にコンパイルによってミスをキャッチできない。テストが重要であるということに深く納得した。私はタスクの進捗が遅いことに課題を感じていて、それを解決するために我流でどうにかしようとしていました。それだと効率も悪く、なかなか根本的な解決に繋がらないことを実感していたので、他の方の知恵を借りようと本を読むことにしました。テーマが似た本を3冊を読んだところ、仕事が遅い人の特徴で共通して挙げられているものがいくつかありました。私自身思い当たる節があったので、今の私の考え方で改めるべきだと感じたものついてまとめてみました。今回参考にさせていただいた本は以下の3冊です。私は目の前のタスクに、なかなか集中することができません。目の前のタスク以外のこと(調査や雑務など)もこなそうと、様々なことに気を取られてしまうからです。以下のようなことです。調査が必要な要件が流れてくると気を取られてしまう社内で困っている内容の話を耳にすると一緒に解決しようとしてしまう自分より先輩のメンバーに雑務をさせまいと常に周りを見てしまっている具体的な解決方法シングルタスク集中をするには、シングルタスクを行うとよいそうです。指し、生産性をあげることを目的としています。下げてしまうとのことでした。シングルタスクに関する本も出ていたので、せひご覧ください。見る誘惑を遮断するもうひとつは、気を取られそうな誘惑を物理的に遮断することです。誘惑と戦おうとするとそれだけでパワーを使いますし、戦った時点で目の前のタスクに100%集中できているとは言えません。誘惑と戦うよりも誘惑から物理的に遮断する方が効率的です。閉じる集中できる音楽を聞いて、雑音を遮断する他のメンバーの動きが目に入らない環境で仕事をするといったことを習慣にすると良いかもしれないですね。私はあまり寝なくても頑張って働ける体質(だと思っていた)なので、時間はいくらでもあると考えてしまっていました。そのせいか明確な時間制限を設けずにタスクに取り組んでしまい、結果的にだらだらとタスクに取り組んでいました。制限時間を設けてタスクに取り組む時間制限を設けてタスクに取り組むことで、半ば強制的に集中を余儀なくされます。時間の強制力をうまく活用して、瞬発力を引き出すことが大切です。プライベートを充実させるプライベートな時間にやりたいことがあれば、定時までに仕事を終わらせようという力がはたらきます。プライベートが充実していればいるほど、その力も大きくなります。睡眠時間が少ないと、頭の中に霧が張っているような感覚になって集中ができないとわかっているのに、それは甘えだと長時間労働でカバーしていました。これだといつまでたっても、タスクを効率よくこなせないですよね。3時間あたりでもっとも効率的に脳が動くようなので、その時間帯に合わせて重要な課題やクリエイティブな仕事に取り組むと良いそうです。逆に夜は脳も体も疲れ切っているので、単純作業をするのに適しているとのことでした。脳の性質に合わせて取り組むタスクを変えると効率的に仕事が進められそうですね。戦略的に睡眠をとる遅く起床してしまい、もっとも効率的に脳が動くタイミングが、お昼ご飯の時間と重なってしまっては勿体無いですよね。何時に就寝すれば良いかを逆算する必要があります。人間は基本的に睡眠時間が6時間未満になると、意志力が低下し、誘惑に負ける可能性を高めてしまうそうです。効率よくタスクをこなすには、戦略的に睡眠をとるべきだということでした。いうアプローチの仕方ではないでしょうか。私はこれまでの人生、多くの課題を根性で乗り切ってきたので、根本的に考え方を変える良いきっかけになりました。私と同じようなことで悩んでいる方がいましたら、今回紹介した3冊の本を読んでみてください。私と同様に今までの悩みや問題が解決できるきっかけになるかもしれません。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。