2019/11/09(土)仕事の楽しさ
久しぶりのブログです。が、あまり明るい内容ではありません。(´・ω・`)
謎の
少し前、詳細は伏せますが、謎の2on1がありました。(なんだそりゃ
そこで、「今の仕事は楽しいか?」と問われ「楽しいとは何だろう。今まで仕事で楽しいと感じたことがない。今までずっと仕事は辛く厳しいものだった。今は辛くはないのは確か。きっと楽しいのだと思う」と答えました。
聞いていた2人は「(楽しくなさそうな)謎がとけた」「それは問題だ」と。
仕事が楽しい状態とはどんなものかを定義します。以下かと思います。
- 責任を持って任されている
- 困難な課題に対し着実に成果を出せている
- やり甲斐がある
一方で、自分の仕事の環境、評価は次のような状態が長く続きました。
- 任されず、評価されない
- 結果を出せない
- うまく行かないことの方が多い
- 叱責される
- 成果は出せても短期的なものにとどまる
また、以前の記事でも触れましたが、いろいろ困難な状態が続くことが多くありました。(こうやって見ると、本当に仕事できない奴ですな…)
ひとことでまとめれば、「自己肯定感が得られない」状態が多かったと思います。
昔語り
自己肯定感が得られなかった要因の一つに、背景に子供の頃の体験と大人になってからのギャップがあるかと思いました。
私は、自慢に聞こえるかも知れませんが、勉強ができる子供でした。小学校の頃の勉強は理解できるのが当たり前、中学でも校内10位前後をキープし、それなりの進学校へ進み、旧帝大を出ました。10代は、できて当たり前、できて当然の世界を生きていました。
一見順風満帆に見えますが、大学に入る頃からうまく行かなくなります。大学に入るのにニ浪し、大学では勉強について行けなくなり、いろいろあって一年留年しました。
そして、就職によって世界が変わります。仕事ができない奴の誕生です。
仕事上の失敗は誰にでもあることですが、私は失敗のリカバリーがとにかく下手でした。よくやったのは、小さな失敗を軽視し、または気づかずにそのまま突き進み、後で大事になる、というのをよくやりました。
そしてしばしば上司と衝突しました。些細なこと(と当時は思ってました)をネチネチ言ってくるのも気に入らなかったですし、失敗そのものを受け入れられず、落ち込むだけ落ち込んで、改善行為を行いませんでした。
結果、理想と現実のギャップに苦しみ、体を壊して休職に至ったのは過去の記事のとおり。
楽しむ、とは
昔語りが過ぎました。
では、仕事が楽しくなるには、どうしていったらいいのか。
大きく分けてふたつのフェーズがあるかなと思いました。
- 過程を楽しむ
- 結果が全てを癒やす
現在ではいい歳のおっさんになりまして、仕事が「基本うまく行かないもの」であることを理解しました。
都度、軌道修正し、自身を成長、変化させ、乗り越えたり迂回したりしてゴールへの道筋をつける、その行為自体をゲームとして楽しむことが重要かなと思えるようになりました。
また、二つ目は前職の社長の座右の銘なんですが、なんだかんだゴールにたどり着くことがカタストロフィを生むのですよね。
今のところ、入社して4ヶ月が経とうとしています。結果はまだまだ出せていないですから、過程を楽しむ必要があります。
果たして、出来ているだろうか。うーむ…
(答え、出ず)
2019/07/06(土)入社して一週間を振り返りました
まぁいろいろたどっていけば分かるんですけど、まだ正式に許可いただいてないので社名は伏せますが、無職から転職して一週間が経ちました。
ほぼほぼ今の組織の状況、課題感に追いつくので精一杯でした。
自社サービスの開発をやっているへーしゃでは、業務フローとプログラムが密接につながっていると感じまして、その辺を私の方から「教えてー」と聞けたのは、ナイスプレイだったと思います。
一方、コードを読んで理解する、という方面では、なんとなく漫然と眺めてしまっており、ちょっとやり方を見直す必要があるかなぁ、と反省しています。
今後へーしゃでは勉強会やMeetupなど積極的にやっていく流れなので、その辺でのコミットもやっていきます。
採用活動については、最初は、まずはエンジニアとしての成果をしっかり出したうえでコミットしていくべきかなぁ、とか思っていたんですが、ちょうど同じ7月1日から新しい会社に転職されたてぃーびーさんのご活躍を見て、むしろ全方位に対してぐいぐい突っ込んで行った方がいいのではないか?と思い直しました。(無論てぃーびーさんは超弩級のスーパーマンであることを差し引いて考えたとしても)
怒涛の1週間目が終わった。
— てぃーびー-スタディスト人事 (@tbpgr) 2019年7月5日
各所から1週間目っぽくないという言葉をいただいた。これは
・1週間らしからぬ活躍をしてくれている
・1週間らしからぬ図々しさを発揮している
あたりの二択だろう。
どっちだ!
※マジレス不要。大喜利歓迎
へーしゃでは週一で1on1が実施されており、課題や方向性の共有がスムーズにやれることが期待できるので、ぐいぐいと食い込んでいく姿勢を維持していきたいです。
あーそんなことより来週のCryptopsyの来日が楽しみで仕方がないんじゃー!!
2019/02/01(金)一月振り返り
2019/01/05(土)あれもしたい、これもしたい
2018/05/08(火)std::sortに渡す比較関数の「Strict Weak Ordering」ルールについて
ここのところの仕事の中で、vectorを一定の(しかし単なる大小比較ほどシンプルじゃないルールで)ソートする必要があり、コーディングしていました。
差し支えない程度にざっくり言うと、(x, y)座標の点を表す構造体があり、それを左上から右下へ並べ替えます。その時に、一定の閾値以下のズレはないものとして扱う、イコールとする、という仕掛けを入れたかったのです。
せっかくSTL使ってるんだから、ソートもSTLのやつを使えばいいじゃんということで、std::sortを使うことにしました。イメージとして、RubyのArray::sort、ブロック付きのやつが頭にあり、そんな雰囲気でstd::sortを使うつもりでいました。
サクサクとつくり、実際動かしてみたところ、Assertが発生しました。曰く「invalid comparator」。理由がわからず検索をかけてみたところ、StackOverflowの記事に行き当たり、比較関数は「Strict Weak Ordering」なるルールに従う必要があるとのこと。
これが、Wikipediaやここやここを読んでもさっぱりピンとこなかったのです。
なんとか理解したものを噛みくだくと、比較関数 comp(a, b) は以下の3点を守る必要がある、ということ。
- すべての場合において、comp(a,a) が false となること
- comp(a,b) が true のとき、comp(b,a) が必ず false になること
- comp(a,b) が true かつ comp(b,c) が true のとき、comp(a,c) が必ず true になること
最終的に、ここの記述に行きつき、腑に落ちた次第。
なんでもVisualStudioはデバッグビルド時にこのルールをチェックして、違反する場合にアサート飛ばしてくれるんだそうな。VisualStudioさまさま。