Rspecの書き方を先輩たちに質問してみた話

コードリファクタリング中にテストを書こうと思ったのですが、ふと考えたら私のRspec冗長な気がする…!と思い、会社のSlackで先輩方にRspecの書き方を質問してみました。

ちなみに私が書いていたテストコードはこんな感じ。

describe 'hoge_method' do
  context 'hogeがふむふむのとき' do
    example 'trueになること' do
      ・・・略・・・
      expect(piyo.hoge_method).to eq true
    end
  end
end

冗長かも?と思ったのははexampleとexpectの内容がほぼ同じだからです。

先輩方からのアドバイス

先輩01さんの場合

context "valid" do
  context "hogehoge" do
   it do
   end
  end
end 

context "invalid" do
  context "mogemoge" do
   it do
   end
  end
end

同一context(テストデータ)で複数 it はしてないです。

先輩02さんの場合

describe … テスト対象
context … xxの時
it … こうなる

って感じですね。itはシンプルな時は省略したり

先輩03さんの場合

itに引数与えたら負け

↓のように期待値がexpect読むだけで一目瞭然になってればベスト
it { expect(true).to be true }

it 'trueになる' { expect(true).to be true }は冗長

※「理想なので追い求めすぎると逆にコストかかるので適度なところで線引が必要」とのことでした!

その他書き方に関する意見やアドバイス

  • letを上書きしない
  • テストデータを共通化しないで、各テストで全部書くのがいいとは一概には言えない
  • letはoverrideできるのが便利なとこで、contextに付随する条件を明示的にするのに便利
  • 期待する結果がruby的なrueの値の場合、be以降を省略できる→expect(true).to be
  • be_truthyとか be_falsy とかもある
  • scala checkについては「テスト対象の関数への入力を(ある一定の境界内で)ランダムに生成して、境界値テストを自動化してバグを洗い出す手法」→テスト対象として興味ないデータをランダム値にするのとは意味が違う

結論

私が担当しているプロジェクトのテストコードは下記のように書くことにします。

describe 'hogehoge?' do
  context 'humuhumuが0のとき' do
    it { expect(piyo.hogehoge?("HOGE")).to be_truthy }
  end
end

letは使いこなせる気がしないので、使いたい!という場面が出るまでは使わない感じにします。

最後に

他にもこんな書き方があるよー!などのご意見やアドバイスがあればうかがいたいです!

先輩方、ありがとうございました🙏

参考サイト

メモ:2次元配列の行列を入れ替える

自分用のメモ。
理解を補助するために作成。

参考サイト:
ワクガンス | JavaScriptの覚書

参考コード:

function transpose(a) {
  return Object.keys(a[0]).map(function (c) {
    return a.map(function (r) {
      return r[c];
    });
  });
}   

※参考サイトより引用


Object.keys(array) で2次元配列の添字を返す。
これが変換後の行の添字になる。

var array = [[部門コード, 1000.0, 2000.0, 3000.0, 4000.0], [ほげ, 1.0, 4.0, 7.0, 10.0], [ふむ, 2.0, 5.0, 8.0, 11.0], [ぴよ, 3.0, 6.0, 9.0, 12.0]];
console.log(Object.keys(array)); // console: [0, 1, 2, 3, 4]

参考:
Object.keys() - JavaScript | MDN


mapの中でmapを実行すると、2次元配列がかえる。


最初に変換後の行の添字を取り出したのは、縦に読んでいくため。
各行の0番目の値を取り出した配列を作る、行の1番目の値を取り出した配列を作る…を繰り返して、新しい2次元配列を作成。

f:id:maetoo11:20170510122601p:plain

f:id:maetoo11:20170510122947p:plain


納得ヽ(=´▽`=)ノ

DockerでRedmineを動かす

概要

自分のMac Book ProでDockerを使ってRedmineを起動させるところまでやってみた。
(とりあえずやってみた系の記事)

portの指定に注意。

手順

Docker for Macをダウンロード&インストール

f:id:maetoo11:20170220125316p:plain

起動して「Docker is running」になっていることを確認。

コンソールを開いてdockerコマンドが使えることを確認。

$ docker -v
Docker version 1.13.1, build 092cba3

Redmine用のDockerイメージがあるかを確認。

$ docker search redmine
NAME                               DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
redmine                            Redmine is a flexible project management w...   369       [OK]
sameersbn/redmine                                                                  232                  [OK]
bitnami/redmine                    Bitnami Docker Image for Redmine                14                   [OK]
74th/redmine-all-in-one            Redmine includes hosting SVN & Git , backl...   9                    [OK]
vpetersson/redmine                                                                 2                    [OK]
eeacms/redmine                     EEA Redmine docker setup                        2                    [OK]
inspiredgeek/redmine-alpine        Simple Docker images to run Redmine tracke...   2                    [OK]
commonms/redmine                   Docker image for Redmine.                       1                    [OK]
fjudith/redmine                    Dockerized Redmine based on redmine:3.3 of...   1                    [OK]
starfox/redmine-plugin-dashboard   A container designed to install redmine-da...   1                    [OK]
puffinrocks/redmine                Redmine - project management and issue tra...   0                    [OK]
zhusj/redmine                      Customized Redmine                              0                    [OK]
openfrontier/redmine               Redmine docker plus the agile plugin.           0                    [OK]
ppschweiz/redmine                                                                  0                    [OK]
liumiaocn/redmine                  redmine alpine image                            0                    [OK]
thiagorider/redmine                Redmine Docker Image Automated Build Repo.      0                    [OK]
honsiorovskyi/redmine              Official Redmine + Git + Mercurial              0                    [OK]
abcfy2/redmine                     redmine docker image forked from official ...   0                    [OK]
thooams/redmine                    Fork docker redmine                             0                    [OK]
tukiyo3/redmine                    redmine                                         0                    [OK]
mikroways/redmine                  redmine passenger image                         0                    [OK]
miko2u/redmine                     Redmine                                         0                    [OK]
enderson/redmine                   Dockerized Redmine application                  0                    [OK]
shiratamag/redmine                 openshift redmine test                          0                    [OK]
speed/redmine                      Redmine                                         0                    [OK]

今回は公式のRedmineイメージを使います。([OFFICIAL]が[OK]になっているもの)

$ docker pull redmine
Using default tag: latest
latest: Pulling from library/redmine
5040bd298390: Pull complete
596ec0bfbfe7: Pull complete
330c0f0b9895: Pull complete
759aaf3bf184: Pull complete
44da9d770a4e: Pull complete
a9b8139f979b: Pull complete
e10cd3a7c32c: Pull complete
7a316ad832a5: Pull complete
aeacba04b652: Pull complete
45ac9e0e8f38: Pull complete
5fca085ddfc6: Pull complete
969036701fdc: Pull complete
a08e120d50ea: Pull complete
d26197c612f3: Pull complete
cf0ff0b2dba2: Pull complete
Digest: sha256:e59bcba1a77fe25c84ee7d536ff6e23ded685846cfa91e4c02854d57391a52de
Status: Downloaded newer image for redmine:latest

Dockerを起動する。
※-pはローカルとDockerのポートの紐付け。これをやらないとアクセスできない。

$ docker run -p "3000:3000" redmine

warning: missing REDMINE_DB_MYSQL or REDMINE_DB_POSTGRES environment variables

*** Using sqlite3 as fallback. ***

Fetching gem metadata from https://rubygems.org/..........
Fetching version metadata from https://rubygems.org/..
Fetching dependency metadata from https://rubygems.org/.
Using rake 12.0.0
Using i18n 0.8.0
Using json 1.8.6
・・・(略)・・・
Using rails 4.2.7.1
Bundle complete! 32 Gemfile dependencies, 56 gems now installed.
Gems in the groups development and test were not installed.
Bundled gems are installed into /usr/local/bundle.
/usr/local/bundle/gems/htmlentities-4.3.1/lib/htmlentities/mappings/expanded.rb:465: warning: duplicated key at line 466 ignored: "inodot"
/usr/local/bundle/gems/htmlentities-4.3.1/lib/htmlentities/mappings/expanded.rb:465: warning: duplicated key at line 466 ignored: "inodot"
== 1 Setup: migrating =========================================================
-- create_table("attachments", {:force=>true})
   -> 0.0053s
-- create_table("auth_sources", {:force=>true})
・・・(略)・・・
== 20160529063352 AddRolesSettings: migrated (0.0014s) ========================

/usr/local/bundle/gems/htmlentities-4.3.1/lib/htmlentities/mappings/expanded.rb:465: warning: duplicated key at line 466 ignored: "inodot"
[2017-02-19 14:40:57] INFO  WEBrick 1.3.1
[2017-02-19 14:40:57] INFO  ruby 2.2.6 (2016-11-15) [x86_64-linux]
[2017-02-19 14:40:57] INFO  WEBrick::HTTPServer#start: pid=1 port=3000

これで localhost:3000にアクセスして、Redmineの画面が表示されればOK

エンジニア交流会のススメ

この記事はSupership株式会社 Advent Calendar 2016の25日目の記事です。

私はSupershipの社員ではありませんが、グループ会社のSocketという会社の社員です。
Supership株式会社 Advent Calendar 2016企画者の @astapi さんからお誘いいただき、参加することになりました。

概要

  • エンジニア交流会はいいぞ
  • 会社・チーム・使っている技術などなど、いろいろなエンジニアが集まると面白いぞ

エンジニア交流会とは?

いろいろな会社・チームのエンジニアが集まって発表しあうイベントです。
今までにSyn.、Supsership、AppVador、Connehito、Socket、medibaのエンジニアが参加しています。

2ヶ月〜3ヶ月に1回のペースで開催していて、この記事を書いている時点で4回開催しました。

社内のエンジニアが集まって「勉強会」を開催している話はよく聞きますが、私たちが開催しているのは「交流会」です。

何かを学ぶという堅苦しいものではなく、技術的な話題に限らず興味のあることを発表し、お互いのことを知ってほしいという想いで開催しています。

実際、技術系のLTだけでなく深圳のスマートシティの話や、各社CTOを集めたぶっちゃけパネルディスカッションなど、コンテンツの幅も広げています。その話を肴に、懇親会では社やチームをまたいでエンジニア同士が交流しています。

f:id:maetoo11:20161225233825j:plain

背景

@yamaz さんと @inayuta さんの「何かエンジニアで集まってやりましょう」という雑な発言から、エンジニア交流会は始まりました。

ただ、この2人に任せていても話が進まない危険性があります。私自身はこの人たちのように、すごく尖った技術を持っているわけではありません。ですが、みんなの苦手な日程調整・事前準備・書類作成などは得意なので、自分ができることで貢献したいという想いで実行委員長を務めることにしました。

当時は社内にどんなエンジニアがいるのかも分からない・そもそも需要があるのかも分からないという状態だったので、「まずはゆるく開催してみよう」と考えていました。

実際に第1回を開催してみると、参加者数は30名超え、事後アンケートでも好評だったので、今でもゆるく継続して開催しています。
12月に開催した第4回のエンジニア交流会では、50名以上の参加者が集まりました(∩´∀`)∩ワーイ

運営のポイント

  • 準備はちゃんとする(場所・予算・社内調整など)
  • 仲間を見つけて準備や運営業務を分担する
  • メインコンテンツだけ事前にお願いしておくと良い(集客しやすい)

人を集めるので、集まった人たちが困らないように事前準備や社内調整はきちんとしておいたほうがいいと思います。
また、懇親会を開催するのであれば、参加者から費用を集めるよりも、会社からお金を出してもらって飲食物を準備するほうが楽かもしれないですね。
私達の会社ではこのイベントについて、会社側が費用を負担してくださっています。(いつもありがとうございます)

f:id:maetoo11:20161225235206p:plain

↑これは会場設営が完了したタイミングの写真です。

まとめ

いくつかの会社がくっついたり、子会社になったり、事業部ごとにチームが分かれてしまったり。優秀なエンジニアは集まっているけど、交流がないという組織もあると思います。

「エンジニアが大勢いるけど他チームがどんな技術を持っているのかわからない」「子会社があるけどまったく交流がない」という状況にモヤモヤしている方は、人を集めてゆるく「エンジニア交流会」を開催してみてはどうでしょうか。

実は私は、自分の所属している会社が子会社化されることに良いイメージを持っていませんでした。
しかし、エンジニア交流会を通して、違う文化・技術を持ったエンジニアたちの話を聞いたことにより「私の知らない面白いがそこにあるじゃん!」と前向きにとらえることができるようになりました。

この記事を読んだあなたもエンジニア交流会を開催して、「自分の知らない、誰かが知っている面白いこと」でワクワクしてみては?


いつもありがとうございます🙏

  • 実行委員のみんな
  • 広報、人事、総務のみなさん(取材協力、事前準備サポートなど)
  • 登壇者のみなさん
  • 参加者のみなさん

SHIROBAKOの細かすぎて伝わらない気がするけど好きなシーン(13話〜24話)

この記事は SHIROBAKO Advent Calendar 2016 15日目の記事です。
前回の記事 に反応があったのが嬉しかったです!
りーちゃん可愛いですよね!

13話〜24話まで、1話ずつ「細かすぎて伝わらない気がするけど個人的に好きなシーン」について書きます。
SHIROBAKOをまだ観ていない方には、ネタバレになる&何を言っているのか分からないであろう内容が含まれます。

13話

キャラクターデザインを打診され驚く井口さん。
「あーしが?!」のあーしの言い方がサバサバしてる感じで好きです。

http://livedoor.4.blogimg.jp/anico_bin/imgs/f/6/f6bc5184.jpg

出典:http://anicobin.ldblog.jp/archives/42800307.html

14話

サンジョの声優を決める会議のシーン。
ナベP、眉間にしわ寄ってますよ!
(その顔もかっこいいですよ!!!)

http://livedoor.4.blogimg.jp/anico_bin/imgs/6/a/6aed26b0.jpg

出典:http://anicobin.ldblog.jp/archives/42910069.html

15話

絵コンテできたのを褒め合う監督・円さん・山田さんにりーちゃんが微笑むシーン。
右側から振り返るのが可愛い!!
左側にサイドテールあるからだよね。
顔が見えていいよね!

http://livedoor.4.blogimg.jp/anico_bin/imgs/7/b/7ba6aa2c.jpg

出典:http://anicobin.ldblog.jp/archives/43022041.html

16話

井口さんの気分転換のためにみんなでバッティングセンターに行った後のシーン。
ファミレスっぽい場所なんだけど、ガストじゃなくてロイヤルホストっぽくて、小笠原さんの雰囲気に合ってるのがいいですよね。

http://livedoor.4.blogimg.jp/anico_bin/imgs/4/0/40c2f9c1.jpg

出典:http://anicobin.ldblog.jp/archives/43130579.html

17話

ボロボロになった新人制作の帰りをみゃーもりが出迎えるシーン。
弁当掲げる動作が可愛いです。
首のかしげ方とか、ちょっとおねーさんぽいのが良いのです。

http://livedoor.4.blogimg.jp/anico_bin/imgs/d/a/da50008a.jpg

出典:http://anicobin.ldblog.jp/archives/43240658.html

18話

矢野さんが戻ってくるシーン。
ドアが開く音の後、脚から移すんですよね。
脚だけで矢野さんってわかる!
そして超ホッとしました。
万策尽きない(๑•̀ㅂ•́)و✧

http://livedoor.4.blogimg.jp/anico_bin/imgs/d/c/dc94f6d5.jpg

出典:http://anicobin.ldblog.jp/archives/43350126.html

19話

矢野さんがヒゲ仙人に仕事を依頼しに行くシーン。
パピコのくわえ方とクールな表情のギャップがたまりません。

http://livedoor.4.blogimg.jp/anico_bin/imgs/0/7/07c0d46e.jpg

出典:http://anicobin.ldblog.jp/archives/43457486.html

20話

最終話(13話)の内容について打ち合わせをするシーン。
監督の「がんばるっ!!!」という発言に呆れる舞茸さん。
「軽いなぁ…このデブ」という台詞のチョイスもサラッと言っちゃう感じも超好きです。
傷つけるためにデブって言ってるわけじゃなくて、会話のテンポの中の綺麗なツッコミなのがまたいいです。

http://livedoor.4.blogimg.jp/anico_bin/imgs/0/7/07115fc3.jpg

出典:http://anicobin.ldblog.jp/archives/43561584.html

21話

瀬川さんから平岡さんをはずしてくれと依頼されるシーン。
「瀬川さんのおっしゃっていることはわかりました。一度平岡と話をさせてください。」と言うみゃーもり。
私の中では「えぇ?!」みたいな焦る感じになると思っていましたw
ちゃんと腹くくって自分がやらなきゃって思ってるのが表情から伝わってきて良いです。

http://livedoor.4.blogimg.jp/anico_bin/imgs/d/1/d15096d4.jpg

出典:http://anicobin.ldblog.jp/archives/43669708.html

22話

「これは下着ですか?!」の名シーン。
久乃木さんが「これは…」って言い出して後の山田さん・監督・円さん・みゃーもりの驚いた表情が好きです。

http://livedoor.4.blogimg.jp/anico_bin/imgs/d/f/df6d0ba8.jpg

出典:http://anicobin.ldblog.jp/archives/43778856.html

23話

社長が監督に監督という仕事について話すシーン。
とってもいいことを言った後に、おっさん2人で(((((((((((っ・ω・)っ ウィーン ってする、その落差がいいです。
この作品、監督の動き可愛いですよね。

http://livedoor.4.blogimg.jp/anico_bin/imgs/4/b/4b6f92ab.jpg

出典:http://anicobin.ldblog.jp/archives/43886435.html

24話

乾杯の挨拶を振られたみゃーもりにナベPがマイクを投げ渡すシーン。
「ほら行け、エース」って言葉がまたいい!!!
この後のみゃーもりの挨拶も素敵なんだけど、それを演出した監督とナベPナイス!って思いました。

http://livedoor.4.blogimg.jp/anico_bin/imgs/5/7/57d80974.jpg

出典:http://anicobin.ldblog.jp/archives/43988621.html

まとめ

SHIROBAKO、ほんとにいいアニメですよね。
アドベントカレンダーをとおして、SHIROBAKOは色んな人に色んな視点から愛されているんだなぁ、と感じることができました。
書く機会をくださったくぎゅさんに感謝です。

SHIROBAKOの細かすぎて伝わらない気がするけど好きなシーン(1話〜12話)

この記事は SHIROBAKO Advent Calendar 2016 7日目の記事です。
皆さんが素敵な記事を書いているので、初参加の私なんかが記事を書いていいのか、ドキドキしています。

1話〜12話まで、1話ずつ「細かすぎて伝わらない気がするけど個人的に好きなシーン」について書きます。
SHIROBAKOをまだ観ていない方には、ネタバレになる&何を言っているのか分からないであろう内容が含まれます。

1話

瀬川さん宅に勝負カットを依頼しに、本田さん、みゃーもり、太郎の3人で訪問するシーン。
太郎の「しゃーっす!」、腹が立つけど、勢いが好きです。
(SHIROBAKO1周目のときは太郎が大っ嫌いだったのですが、5週目あたりから良さがわかるようになりました)

http://livedoor.4.blogimg.jp/anico_bin/imgs/b/9/b9ab3802.jpg http://anicobin.ldblog.jp/archives/41269962.html

2話

あるぴんの設定を見直す会議でのワンシーン。

宮森「そういえば、素朴な疑問なんですけど、あるぴんってドーナツ派ですかね?羊羹派ですかね??」
矢野「え、何?その二択問題」

矢野さんの突っ込みつつも聞くスタンス!
何かアレなことを言ってシーンとなると気まずいですが、先輩がすぐにツッコんでくれると気まずい想いもしないし話も進みますよね。

http://blog-imgs-57-origin.fc2.com/k/a/g/kagano443/20141016-s052.jpg http://kagano443.blog.fc2.com/blog-entry-755.html

3話

矢野さんがやるべきことを付箋に書いてくれるシーン。
すごーく綺麗な字というわけではないんだけど、気遣い屋さんっぽ字な気がしてときめきます!
あと付箋が可愛いですよね。

http://livedoor.4.blogimg.jp/anico_bin/imgs/3/c/3c7605fb.jpg http://anicobin.ldblog.jp/archives/41518586.html

4話

矢野さん、みゃーもり、太郎が話すシーン。
宮森のめんどくさそうな顔と、その後に出てくる矢野さんの毒舌ツッコミがたまらないです。

太郎「おいおい宮森!大変ですね、くらいは言ってよぅ」
宮森「大変ですね(棒」
太郎「いーんだ、いーんだ。どうせ俺なんて孤高の虎ですよー」
矢野「虎に謝れ」

http://livedoor.4.blogimg.jp/anico_bin/imgs/1/a/1a6438c9.jpg http://anicobin.ldblog.jp/archives/41644190.html

5話

遠藤さんが作監を降りる!と怒って自宅に帰るシーン。
クイックルワイパーを持っている遠藤さんの奥さんがたまらなく可愛いです。
生活感というか、仕事してる人にも家庭があるのよねぇ…と思えるシーンでした。

http://cdn-ak.f.st-hatena.com/images/fotolife/r/rikio0505/20141111/20141111220927.png http://d.hatena.ne.jp/rikio0505/20141111/1415715159

6話

脱走後に会社に戻ってきた監督がコンテを描きに牢獄(?)に戻るシーン。

監督「でも本田君待ってるから」
監督「じゃ、行ってくる」

監督の決意した表情と声が好きです。
いつもふざけている監督の真面目な感じと、温かく見守る円さんが良いです。

http://livedoor.blogimg.jp/aaieba149/imgs/9/1/91bcb1f8.jpg http://aaieba.livedoor.biz/archives/41884789.html

7話

寝起きのりーちゃん!!!
可愛い!!!
夜更かしの理由が「罪と罰を読んでたから」って!!!!!
興味があることに時間をガンガン使って、自分に栄養をたくさん入れているっていうのがわかるいいシーンですよね。

http://livedoor.4.blogimg.jp/anico_bin/imgs/5/a/5a49157a.jpg http://anicobin.ldblog.jp/archives/42002913.html

8話

エマの手から飛び出したドーナツをもぐもぐ食べながら「どうした?」を聞く井口さん。
後輩を心配する気持ちはありつつも、ヘンに重い空気にせずたずねる感じがたまりません。

http://livedoor.4.blogimg.jp/anico_bin/imgs/3/d/3db219e4.jpg http://anicobin.ldblog.jp/archives/42119924.html

9話

サンジョのアニメ化を編集長相手にナベPが切り出すシーン。
ナベPの脱力系なのに、ここぞというところで力が入るところがいいですよね。
(あと、全くアニメの内容に関係ないのですが、個人的にタレ目の男性が大好きです)

http://livedoor.4.blogimg.jp/anico_bin/imgs/d/1/d190e1ae.jpg http://anicobin.ldblog.jp/archives/42240273.html

10話

アフレコが終わった後の打ち上げで、ビールを注文しようとする監督の指をみゃーもりが掴むシーン。
焦り→怒り→冷静に変わっていった後のみゃーもりが、物理攻撃(?)に出た!!!
いいぞみゃーもり!と思ったシーンでした。

http://livedoor.4.blogimg.jp/anico_bin/imgs/4/6/46e836b4.jpg http://anicobin.ldblog.jp/archives/42359003.html

11話

みゃーもりがムサニの採用面接を受けたときを振り返るシーン。
あたふたするみゃーもりに吹き出すナベP!!!
この後みゃーもりを採用するかどうかを決めるときに、絶対思い出してニヤついただろ!と思いました。

http://livedoor.4.blogimg.jp/anico_bin/imgs/b/9/b9545baf.jpg http://anicobin.ldblog.jp/archives/42472392.html

12話

杉江さんが打ち上げを断るシーン。
ちゃんとマイルールがあって、「えくそだすっ!」の原画を手伝っている間はそのマイルールを一時的に我慢して全力投球してたんだなぁ、と思いました。

http://livedoor.4.blogimg.jp/anico_bin/imgs/2/5/254be865.jpg http://anicobin.ldblog.jp/archives/42584529.html


後半(13話〜24話)は来週、2016年12月15日の記事で書きます(๑•̀ㅂ•́)و✧

「会社と自分がお互いハッピーな状態」について考えてみた

転職しようかと悩んでいました。

会社への不満があるから・・・ではなく、会社と自分、お互いがハッピーになるのが難しいと思うようになったからです。
(不満がないわけではありませんが、どんな会社にいても大なり小なり不満はあるものだと私は思っています)

会社と自分がお互いハッピーな状態とは?

お互いハッピーとかふわふわしたことを言ってもしょうがないので、定義できるように図にしてみました。

f:id:maetoo11:20161107225302p:plain

②に入るタスクが多いのが「会社と自分がお互いハッピーな状態」だと定義しました。

なぜ悩んでいるのか?

今の自分は①と④のタスクが多い状態なのでしょうか?
もしかしたら③のタスクにも着手してしまっているかもしれません。

判断ができないのです。

「判断ができない」から悩むんだと思います。

これからやること

もし②に入るタスクが多いなら転職したいわけではなく、何か解決したい課題があるはずなのでそれを見つける。

①と④に入るタスクが多いなら、会社のビジョンと自分のやりたいことを考えて転職するか判断する。
転職しないなら②に入るタスクを増やす方法を考える。

③が多かったら、引き受ける際に自分が判断ミスをしているはずなのでその原因を分析して対策を練る。