龍華荘

写真とsimutrans。ポエム。

20210522 - 4年ぐらいいた会社を辞めるかどうかを考えている

完全に放浪軍師さんの受け売りですが、そういう系のエントリーを書いてみたかっただけです()

www.gunshi.info

www.gunshi.info

 

軽くスペックでも。

◆学生時代

・バックエンド:phpJava(Androidも)、C#

 まぁ一般的かな?ってところ。

・フロント  :js、CSS、html(4も5)、jQuery、bootstrap

・FW     :.NET、Laravel、FuelPHP

・DB     :OraclemySql

具体的に何やったの:

 ・いわゆる開発。プロダクトってよりは教育寄り。

 ・工数見積や設計レビュー、主にマネージャ寄り。

  ・基本的には1週間で1機能開発していく、アジャイルと滝を組み合わせたスタイル。

 ・チーム関連ではハードとマネージャ、デザイナーのようにえんじにゃーないないばっかりをやっていた。

 

◆アルバイト時代(学生時代に1年ぐらいやってました。)

・バックエンド:php

・フロント  :jQuery、js、CSS、html 5、bootstrap(ちょっと怪しいですが)

・FW    :cakePHP

・DB    :mySql

具体的に何やったの:

 ・基本的には保守開発。たまに新技術を取得。

  ・AngularJSとかちょろっと見た。

  ・多分エンジニアとしては一番楽しかったかも。

 ・ちょっとだけハードの知識。

 

◆現在

・バックエンド:VB.net(というのは建前)、C#phpJava

・フロント  :んなもんねぇよ。.NETだけ。

・FW    :.NET以外ありませんが…。

・DB    :OracleSQL ServerSQL Anywhere(Sybaseとか呼ばれてました。)

・その他  :python v3、bat、powershell

具体的に何やったの:

 ・自社開発。クラス設計だったり色々。

 ・顧客折衝から基本設計、詳細設計、DB設計、保守、見積作成まで全部こなした。逆にやってないのは多分ない。

 ・ハードの制定から保守もやってたり。ソフト屋なのに。

  ・理由は動作要件の設定やらインフラの知識が全く営業になかったから。

 ・他にもトラブル対応やマニュアル制定、git導入から教育までも…。

 ・5人ほど新人教育を行った。大体1,2ヶ月ほどで一人である程度案件を回せるぐらいまで。

  ・まさか未経験が来るとは思わなかった。

 ・そして唐突に現れるマネージャ役へ…(※役職ではないです。)

 

ざっとなんでもやってるえんじにゃーです。賃金?ないわね。

 

そもそもなぜ転職するの?

これが一番知りたかった人も多そうですが。

入社してからはVB.netしか触ったことがありません。加えて.netはversionが5になろうとしてますが、未だに4への対応で精一杯です。別にVBとか.netが悪いわけではないんですが、.net 2.0の技術しか実践したことがないのは誰でも不安を覚えるような、そんな気がしました。

他の会社と違う点は、新人でも教育次第でちゃんと成長できるって点でしょうか。あとは営業力はちゃんと身につくのは保証できそうです。それ以外はなにかあるの?って聞かれると困ります()

 

 

ところで、.netなのにphpってどこで使ってるの?って話ですが、もっぱらフロントではなくAPIとしてVBからhttpリクエストを投げるときに使ってます。あとライブラリの利用とか。.NetではIISから直接exeが実行できない場合があるときにphpのExecをゴリ押しで使ってたりします。

あとはpythonについても構文解析やデータ変換、Excelファイルをxlsxに変換する等のユーティリティをゴリゴリ書いてました。逆にこういうツールを自分以外は誰も作っておらず、ちまちま手作業を繰り返している人がほとんどでした。データ変換に至ってはSQLで一括でやろうとしている人がいるみたいですが、正確性や可用性とか再利用を考えるとpythonの方がぶっちゃけ楽です。

 

 …って一人でただ勝手に会社と違うことをやってもダメですし、自社開発だけでは限度があるので転職しましょう、ということです。技術力がある会社に入らなければ、いくら自力で頑張ったところで独学にしかならないんです。特にVBの会社は。

もう一つは技術力を単に高めたいのもあって、ドキュメントをただ書くだけよりも自力でコードを書いてシステムを組み上げたいという気持ちがふつふつと出てたりしてました。

 

エンジニアはコードを書いて始めて名乗れるというのは間違ってない

つまりこういうことです。周りがどんどん画像解析やAI、ブロックチェーンと進んでいるのに対して、どんな形でもいいので最新技術に触れるきっかけは必要です。そもそも分からなくても大丈夫なんて言ってくれる人間はどこにもいませんし、そういう人は大体設計かコンサルしかしてません。コードなんて絶対に書かないので、アホな実装を大量に記述してくるわけですが…。

 

もし自分がそういうめちゃくちゃな仕様にぶち当たっても、解決してくれるのは結局自分なのには変わりないってことです。

 

逆に教えすぎるのもあまり良くないんですが。結局自走できないエンジニアにしかならないので。かといって"基礎が全くない人に誰が仕事を依頼するんですか?!"ってぐらいには最低限の事を会社で教えるようにしないとダメって時代でもあります。レガシーな技術を極めたところで、最新の技術は圧倒的に楽なので絶対に勝てません。Basicが元となっているVB6よりもpythonが高速で手軽なのは当たり前ってとこです。

 

エンジニアは惹かれ合うので、結局のとこ動けって周りから言われる

 毎日職場の不満とかをtwitterにぶちまけてるのもあって、「ある程度プログラムは書けるよね」って認識は周りにいつしか広まってました。ナンデ?

SNSを通じて色々な人と知り合ったわけですが、斡旋はせずとも「もっといい場所があるよ」っていう類の話がだんだんと周りから出るようになりましたし、「もう転職した方が楽だよね」って話も増えてきました。

結局のとこ周りからの刺激と自分自身が自然と動くようになったのもあり、転職を始めるという感じです。いくら一人の技術が良かったとしても指標が低いままでは生活自体もままならない、レガシーを大切にするのはいいけど儲かる仕組みをちゃんと作ってから提唱してほしいという2つの気持ちがなんとなくデカいかなと。

 

 

最終的には改善することが一番ですが、最も良いプロセスって周りにあるそこらへんからポンと出てるような気もします。

 

 お仕事があればそれとなく誘ってください。

pythonで1000万件のデータを3時間でDB間移行←多分これが一番得意かも

 ・pandas、swifterと後はDBMSごとに処理をカキカキ

  ・プログレスバーとかも使ってますが、ない方が早いです。

   理由はWinの標準出力が下痢遅いわけですが。

 ・テーブル定義の抜き出しからDBMSに応じたDDLに変換

 ・大体↑の処理ぐらいは自動でやる

 ・ログライタも簡単に実装

 ・データの検証ツール(件数+バイナリ)

構文解析エンジンの実装

・↑を元にしたExcelなどのバイナリデータを位置替えしたり計算したりを定義ファイルを元に実行する奴

・ハード面だとキッティングとかスペッコの要件定義とか

phpも経験あるのでcakeとかLaravelとかまたやりたいかも?

・単価は月20+諸費用+税