If you can dream it, you can do it.

元タイトル「北の大地のIT技術屋より」

仕事でグルーヴ感を生むために転職後1年を振り返る


転職して1年が経過しました。
そこで、ここ1年でやったことを総まとめしてみようと思う。

 

1.技術的に今までより幅を広げた

元々Java屋の自分がPHPやったり、C#やったり、はたまたECCubeやWordpressとそもそも別言語に触れることになった。PHPCakePHPが最初だったが、MVCモデルで綺麗に作られたシステムの追加開発だったので、今までの考え方がほぼ生きた形になった。C#は結局開発をせず、調査だけだったがこういうもんなんだという感覚は掴んだ。

ECCubeもほぼ調査だけだったが、プラグインの種類や2系3系の違いなんてのも知ることになった。WordPressはサイト構築というよりは、サイト構築用のプラットフォームとして使用して、管理画面から色んな事をできるようにしたので、実質WordPressの皮をかぶったPHPの開発だった。これはこれで勉強になった。

JavaとしてはSpringMVCで開発したシステムをリリースしたので、まあまあ勉強になった。あとでも触れる下の子と2人で開発したおかげ(?)もあって、下の子が伸びたとか伸びないとか。Springに触れたことはなかったが、まあまあ分かりやすいいいものだった。そういう意味ではMavenのビルドを始めて使った。個人的にSpringbootを触れた時にちょっと使ったくらいだったが、Mavenは非常に使いやすかったという感想しかない。

こんな感じで色んなことを色んな規模でやったので、広く薄く知識がついたのは大きかった。

2.速攻上司に噛みつく

これがですね、案外評判がいいんですよ。

なんか今、チームの中で閉塞感があるみたいで、自分みたいに良い・悪い別にして活発に発言してくれる人を求めているみたいなんですよ。

上司も迷いながら、考えながら、できれば良い意見は拾い上げながら物事を進めたいと思っているみたいで、忌憚のない意見が欲しいってのが本音みたい。もちろん、全部を受け入れられるわけではないけれど、刺さる部分もあるらしく、良いらしいです。

 

多分、議論をするような土壌がなく、上司のさらに上から言われたことにNoと言えなかったり、そもそもそんなところまで考えが至らなかったりと色々な理由はあると思う。

自分は他の人がぶち当たっている問題を「自分だったらどうするだろう?」と考えてみるので、「自分だったこうする」を出してみるので、そこが助かるらしい。やっぱりある程度考える訓練をしておかないといけないなというのは、今までと同じかなと。

もちろん、言い方は気を付けるのは変わらずだが、キャッチーな強い言葉で引き付けて、こういう意図でこういう言葉を使っているという説明をしっかりすることは続けて行こうと思う。


3.後進の育成に関わる

後進の育成といいつつ、自分より年齢の若い業界歴が浅い(3年くらいまで)と一緒に仕事することができている。しかも、同じプロジェクトで1人とかなので、かなりスパルタに行こうと思えばいけるのだが、そこにはちょっとやりたいことがあって色々試している。

現在の会社ではCMSやらHTMLコーディングが若い子の仕事になっていて、全然技術的にシステムを開発できる力がない。そんな状態でとにかく書いてみろ!みたいなことは完全に無茶ぶりで、ゼロから生み出すのは時間ばかりかかって必要な成果が上がらないので、誰のためにもならない。なので、自分はドリル方式をとっている。初期表示はザックリ書いたので、足りない部分を書いてごらんとか、1つ書いたので残りの3つ分を増やしてみようとか、ゼロからではないがちょっと変えて機能を満たしていくようなやり方だ。これなら、ソースを読んで、どこを変えたらできるだろうか?という基本的な読み書きができる。小さなことからできることを積み重ねると、自信になる。そうやってできることを少しずつ増やしていくことをしていっている。

ちょっとマイクロマネジメント気味に朝と昼と帰り前に、どうなっているかの状況を適宜確認しつつ、成果も出すようにしている。結局、こうやって時間をある程度割きながら、仕事の進め方や考え方を習慣化していって初めて一緒に仕事をある程度任せられる状態になると思うのだ。もう少しこのやり方を続けて、どんな結果がでるかは見ていきたいと思っている。


4.技術的に布教を始める

別に大したことはないのだけど、CIツールを使い始めようとか、テストを書く(JUnitPHPUnit等)をやったり、全然普通のお話。それすらない文化圏なので、こればっかりは仕方ない。無いものは無いのだ。

下手すると、プロジェクトによってはソースコードの管理をしてないなんてこともある。正直、自分の怒り駆動開発が始まっているのだが、いきなり全部をするにはリソース(物理的なサーバや社内のシステム等)の問題だったり、考え方の問題もあるので、まずは自分が関わるものから改善してくしかない。

こればっかりは文化を作っていくしかないので、地道に活動しつつ、下の子を教育しつつ進めていくしかない。

 

5.エンドユーザと関わり始める

別にエンドユーザと関わりたくて転職したわけではなくて、もう少しエンドユーザと近くなりたいなりたいとは考えていた。そうしたら、エンドユーザと関わることが出てきて、仕様の調整やら障害の聞き取りやらで色々大変だった。

できるだけ分かりやすい説明を心掛け、言葉だけではなく図を使ってざっくりイメージを伝えることから始めて、 詳細へ。システム的なプログラミング的なお話ではなく、処理の流れや条件で説明しながら対応している。

いい勉強にはなっているが、やっぱり自分はエンドユーザと関わりたいわけではないなという想いもあることに気付いた。 

 

6.ま、マ、マネジメント…

そもそも、プログラミングに限界を感じて、技術的に伸びない環境にいても仕方ないのと、マネジメント方面に行きたいのもあって、転職を決めた。だが、まずはメンバーから始まり、下を連れて小さなプロジェクトを任せていただいている状態だ。とはいえ、実質プレイングマネージャー状態なので、ソースは書くし、テストもする。

お金に関わる部分も担ってはいるので、一応マネジメント分野にも頭は突っ込んではいるが、実質上司に調整してもらっているところはある。大きくビジネスとしてのマネジメントはまだまだ全然足りない。


最後に

環境を変えることで色々刺激になりながら、まあまあ楽しく、脳みそに汗をかきながら仕事をしている。これからやりたいことをもう少し取りまとめて、焦点を絞って リソースを割いていきたい。まずは、後進の育成と技術の布教は確実に続ける。あとは、言語的にPythonRubyをやってみたり、ブロックチェーン機械学習をやってみるのか、仮想環境での開発等やりたいことはいっぱいある。

最近買った徳丸先生の本でセキュリティを考慮したWebアプリケーションを作るところから始めてみようと思っているところではある。