今日もまた1つ成長したので寝る

Webアプリ開発2年生かなたの成長記録です。

#24 自分が鍛えるべき部分について整理してみた

目標を達成したら努力の方向性を正す

8月に「OracleマスターブロンズSQL基礎」合格、9月に車の免許合格、と2か月連続して結果が出ました。しかし、上記2つとも1年前から取り組んでいたものだったので、結果が出るのが遅かったかなぁと思っています。またこの2つに共通するものとして、「自分の中で必要だと思っていない」「優先順位を付けたときにいつも下に来る」などそもそも目標設定や動機付けの時点でミスしていたことが上げられます。そのため、新たな目標を立てる前に、今自分に必要なものを改めてあげてみようかなと思います。

自分が学びたいモノと今の環境が求めてくるモノ

「自分が学びたいモノ」と「今の環境が求めてくるモノ」って実は乖離があることが多くて、その乖離がモヤモヤを作って自分の行動を鈍らせるなと最近よく考えています。例えばOracleブロンズなんですけど、コレは会社から取得を推奨されたので「今の環境が求めてくるモノ」に入ります。自分としては業務中Oracleで困ることがあまり無かったので必要としていませんでした。こういった乖離のせいで宣言した目標が全然達成されず、「勉強はしているのに結果を出さない人間」になってしまっていました。そのため、一度この2つを整理してみて、より行動の動機付けがしやすくなるようにします。

今の環境が求めてくるモノ
  • OracleブロンズDBA
  • 1人で問い合わせ対応が出来るレベルのシステムへの知識理解
自分が学びたいモノ

改めて整理するとズレてますね。これ全部を同時平行して進めようとしていたのでそりゃあ全部が細く長くやることになります。結果が出ない間はとても苦しいです。評価されないのは苦しいです。そのため、ある程度は今の環境が求めてくるモノを裏切って、ある程度は自分が学びたいモノに集中して、お互いを擦り合わせて妥協点を探ることになります。

お互いを擦り合わせて妥協点を探る

実はこの中にもやり方次第ではシナジーが出来るものがありました。例えば「システムへの知識理解」と「ASP.NETC#ASP.NET MVCをもっとしっかり」は既存ソースを読んで分からないソースを勉強していけば、システムの仕様も分かり実践的なソースも分かり一石二鳥です。なんなら、そこに設計評論なども出来れば追加でシナジーがあるなと思いました。また、「お金の知識」や「株式投資の知識」はどうしても環境的に必要にならなくて手が付けられないこともあるので、もう実際に株式投資やった方が早いなと思いました。必要になれば勉強するなと。

これからやることについて

  1. 10月末までに既存システムのソースを読んで「ASP.NETC#ASP.NET MVC」「システムへの知識理解」「設計の知識理解」を深める
  2. 20歳になる来年の1月までに株式投資を始めるため「お金の知識」「株式投資」「経済学」の本を5冊ずつ読む
  3. 月1冊ずつ「デザインパターン」「オブジェクト指向分析設計」「リファクタリング」「レガシーコード改善ガイド」を読んで「設計の知識理解」を深める
  4. 会社で出してる目標の12月末までにOracleブロンズDBAを取る

これを元に平日1日4ポモドーロ、土日8ポモドーロを回していこうかなと思います。まずは3週間くらい継続してみて様子見って形ですね。

まとめ

なんか上手いことまとまりませんでしたが、ポモドーロしやすいように4つに分類出来たのは良かったと思います。なんやかんやで「遅延式勉強評価法?」でしたっけ、必要になったらその勉強をするっていうヤツに自分も近づいてきたなと思います。時には必要になる環境を自分で用意してやることも大切なのかなと思ったり。毎日をイキイキと過ごしていきましょう。また今日も1つ成長したので寝ます。

#23 「Visual Studio パーフェクトガイド」を読んでとても良かった話

先日出会った本「Visual Studio パーフェクトガイド」がとても良かったので、読んだ報告と良かった点の共有をします。ちなみにこの本、発行が2019年7月14日なのでめちゃくちゃ新しいです。

どんな本?

Visual Studioの機能を手取り足取り教えてくれる本です。インストールから始まり、用語やビルド、デバッグ、テスト手法、チーム開発についてなどなど。。。

どこが良かった?

箇条書きで失礼します。

  • Visual Studioの機能の総量が分かって頭が整理されたところ
  • 人に教えられる自信がついたところ
  • 2019版で書いてあったところ

Visual Studioって本当に機能が多いので、自分が使いこなせているか自信が無い状態で1年間も仕事で使用してきました。しかし、この本を読んだことで頭の中を上手く整理できた感じがします。特にデバッグ周りの機能は条件付きブレークポイントなど知らない機能もあったので新しい学びも沢山ありました。

まとめ

とてもよかったです。これでVisual Studio使いとして自信が付いたと思います。.NETにとてもハマってきているのでこの調子でお勉強していきたいなと思います。まずはASP.NETでのWeb開発をマスターしようと思います!今日もまた1つ成長したので寝る\(^o^)/

#22 .NETの世界がなぜ難しいのかと最近面白いって思い始めた話

.NETの勉強の仕方が分かってきた話

自分はお仕事でASP.NETでWebアプリ開発をしていますが、ほんとに1ミリも理解出来ている気がしません。雰囲気で理解して雰囲気で動かしてます。でも最近頭の中で少し分類が出来るようになってきて、以下を一通り勉強して経験を積めばプロになれるのかなと思い始めました。

ASP.NETでのWebアプリ開発に欲しい知識をコマ切れにするとこう

今の理解ならこのように分類します。自分のプロジェクトだとDBがOracleなのでその勉強も必要です。この世界は勉強すること多いですね。。。

また、なぜ理解に苦しんだのか理由を上げてみます。

.NETの理解が難しい理由①.NETの世界広すぎて何の技術使ってるのかすら分からない問題

.NETって本屋さんだと分かりにくい本の配置してあって「.NET」っていうジャンルに分類されてることが多いです。でも実際はASP.NETASP.NET CoreとASP.NET MVCは別物だし、ASP.NETの本にはVisual Studioの使い方は載って無いんですよね。.NET FrameWorkって言うから1つのものだと思ってたんですけど、.NETという大きな概念があってその下に沢山のFrameWorkがあるみたいです。

また、実際のコードはもっと複雑になります。自分が分からないのが.NETの知識なのかWebの知識なのかASP.NETの知識なのかプログラミング言語の知識なのかプロジェクト自作ライブラリなのかが分からなくなります。自分は新規開発からプロジェクトに参画していない&教えてくれる人は辞めているため、必要な知識が分からない状態で暗中模索してます。ただ逆に言うと既にコードがあるため、答えが目の前に転がっている状態なのは勉強する環境としては良いと言えるかもしれません。メンターがいればですが…

.NETの勉強が分かりにくい理由②プログラミング言語は?って質問が実は的外れ

自分は当初、プログラミングはプログラミング言語を理解していれば出来るものだと思っていたので、「プログラミング言語は何を使っているんですか?」の質問に返ってくる「C#」を勉強すれば良いのだと思っていました。でも実際はC#を使うのはロジックの部分だけだし、Webの知識は必要だったりと上手いこと質問が出来ていなかったんだと思います。

.NETの勉強が分かりにくい理由③Visual Studio自体の勉強が必要

.NETの最大のIDEであるVisualStudioくん。この子機能がありすぎてまともに使いこなせてません。エディタ、コンパイルデバッグとなんでも出来ますが、それ故に使いこなそうと思うとコイツの勉強も必要です。最近やっとVisual Studio自体の専門書が存在していることに気付いて買いました。TFSの分岐とかマージとかまた難しいんですよコレが。賢い機能使うには賢い頭が必要なんですね。

まとめ

自分は.NET開発をする上で大切なことが全然分かってませんでした。ASP.NETC#を勉強すればよいものだと思っていましたが、.NETとVisualStudioの勉強も重要です。これからそこら辺の知識と理解を深めていけたらなぁと思います。とりあえずまた1つ成長したので寝る\(^o^)/オワタ

#21 Oracleブロンズとかいう資格で失敗した話

Oracleブロンズとかいう資格で失敗した話

この資格、1年前から取る取る詐欺をしてるのですが、そろそろ本腰を入れて取ろうと思い、反省をここに書こうかなと思います。

Oracleブロンズとはなに?

Oracleという名前のリレーショナルデータベースがあり、それを使える証明になる資格ですとだけ。その他詳しいことは以下のサイト見ると分かりやすいかと。

オラクルマスターとはどんな資格?難易度から受験料までまとめました | サービス | プロエンジニア

自分がOracleブロンズでやらかした失敗と学び

自分がOracleブロンズを知ったのは「会社から取得を推奨されている資格」だったからです。自分は仕事でOracleを使うため良い機会だと思いOracleブロンズの勉強に取り組み始めました。しかし、1年以上経った今も取得が出来ていないのが現状です。そこで、なぜ1年も取れていないのか原因を分析してまとめてみました。自分が失敗した理由は大きく以下の3つです

  1. 企業系の資格の難易度を見誤ったため
  2. 優先順位付けを失敗したため
  3. 目標設定を失敗したため
1.企業系の資格の難易度を見誤ったこと

まず1つ目ですが、自分は企業系の資格の難易度を舐めていました。自分は高校3年間でITパスポートや基本情報技術者試験を取得していました。そのため、資格試験には強いという自信があり、それが仇となりました。目標設定時に上司に3か月で取ると宣言した挙句、1度目のSQL基礎のオンライン受験で落ちました。まずそこで気付いたことが基本情報とは難易度が違うということでした。どう難易度が違うかというと以下の通りです

  • 基本情報のように過去問そのままで出ない
  • 基本情報は広く浅くというイメージだったが、Oracleブロンズは広く深く出るイメージ
  • 試験時間が足りなくなる

特にオンライン受験が実は難しいことに驚かされました。OracleブロンズはSQL基礎とDBAという2つの種目を受験するのですが、SQL基礎の方はオンライン受験が出来ます。当初自分はカンニングし放題だし参考書片手に挑んだら簡単に取れるだろう。と思っていました。しかし現実はそう甘くはありませんでした。参考書を片手に持っても試験時間が足りなくなり結果は惨敗。試験範囲も広く、参考書の目次さえ覚えておけばすぐ調べて回答出来るだろうと思っていた自分の考えの浅さを恥じます。ちなみに基本情報は広く浅くしか出題されないし過去問ばっかりなので、過去問を真面目にやってれば取れます。

2.優先順位付けの失敗

次に2つ目が、優先順位付けのミスです。自分は高卒の新卒でITエンジニアになったこともあり、1年目は勉強することがとにかく多かったです。モラルマナーの勉強が不足していたり、ExcelSVNなど開発に必要なツールの勉強、Webの基礎知識の勉強、業務知識の勉強、ASP.NET,VB,Javascriptなどのプログラミング技術の勉強、などなど日々実力不足を感じてそのたびに必死に勉強してきました。Oracleも開発に必要な知識は勉強していましたが、ある程度勉強が進むと資格試験を取得するほどの細かい暗記は必要じゃなくなってきます。という経緯で優先順位が低いからという理由でとにかく後回しにしてきて1年経ってしまったというミスです。

3.目標設定の失敗

1つ目と2つ目のまとめという形になるのですが、目標設定を失敗していました。当初6月に取得すると言い惨敗し、次に12月に取得すると言って受験すらしませんでした。実はずーっと不可能な目標設定をしていました。改めて自分が考慮すべきだったのは以下です。

  • 社会人をやりながら勉強をするということ
  • 正しく理由付けをして優先順位を上げること
  • 状況によっては勉強する時間が確保できなくなること
  • 時間をかけなければ企業系の資格は取れないということ
これからのOracleブロンズとの向き合い方

正しい理由付けとして、「取得したらDB触れるテスターとして色んな現場に潜り込めるようになり、SESの選択肢が出来る」という点を見つけました。目標としては、SQL基礎はもうほぼほぼ勉強が終わっているため、8月中には取得します。DBAは12月が目標ですかね。勉強時間については、毎日固定で1Hは確保できるようにしたいと思います。どれだけやりたい勉強があっても1H確保します。

失敗したことをつらつらと並べてみました。自分の要領の悪さにがっかりですね(笑) というわけで今日もまた1つ成長したので寝る\(^o^)/

#20 障害発生して当日直して当日夜間にリリースした話

障害発生の連絡

自分は別案件のリリース作業でセキュリティルームに居たのですが、その時は突然やってきて、上司からの電話で次のような話を聞きました。障害が発生したということ。お客様の翌日の営業には影響を与えないようにすること。そのために当日に直して当日の夜のうちにリリースまで持っていく必要があること。

頭は案外冴えており、状況はすぐに理解できました。しかしメンタルは流石に保てなくて、「えぇ?…(苦笑)」という返しをした覚えがあります。すぐに担当を決め、上司が直し、自分はセキュリティルームに残りリリース作業をする。という流れでした。

案外にも対応は迅速に出来て、夜24:00ほどにはリリースまで完了することが出来ました。障害対応は上手く行きましたが、障害対応に時間をかけたことで終わっていない仕事を頭の片隅に置いたまま終電ダッシュで帰宅しました。

感想

しんどい。この一言に尽きます。早く対処しなけばならないプレッシャー。なぜこんなことが起きてしまったのかという自責の念。あいつ絶対あの工程で気付いてたよなというメンバーへの疑念。などが頭の中をグルグルと駆け巡っていました。次から起こしたくないので対策はしっかり考えようと思います。良い経験になったのは間違いないと思います。また1つ成長したので寝る\(^o^)/

#19 マネジメントする道具への理解

マネジメントする道具について整理してみた

サブリーダーとして自分も作業しつつ他チームメイト2人の面倒も見ながら働いてます。最近はマネジメントする道具の使い方について理解が深まってきたので、1度理解を言語化してみます。やってることは凄い単純でExcelで納期管理とタスク管理をしているだけです。

1.デッドラインリスト

目的は納期管理。
案件ごとに期限をリストアップしただけの表。
仕事始めと仕事終わりに確認する。
突発作業が入るごとに追記する。

2.タスク管理リスト

目的はタスクの予実管理です。
いつ誰が何を実施し所要時間は何時間かを書きます。
朝のグループ会と夕方のグループ会で確認。
チームメイトそれぞれの当日のやりきりタスクを朝に認識合わせし夕方に進捗確認します。
突発作業が入ったときのリソース確認はコレでします。

チーム内で使用する道具が統一されていてメンテされていればOK

目的に沿った道具を決める。1日何回メンテするかを決める。これだけで案外回りますね。あとは見やすくしたりメンテしやすくしたりして改善してく感じです。内容はそんなに重要じゃなくて、チーム内で使用する道具が統一されていてメンテされていることが重要だと思ってます。最悪な状況はメンテされていない道具がごろごろ転がり始め、最終的に個人それぞれのメモ帳とかで自分のタスクを管理し始める状況ですね。誰が何やってるかとか追えなくなるし気付いたら納期漏らしてます。

では今日もまた1つ成長したので寝る ^^) _旦~~

#18 今の会社に満足出来ていない話

会社に満足出来ていない話

今の会社に満足が出来ていないです。何が満足出来ていないかモヤモヤするので言語化してみます。

満足出来ないことに理由をあげてみた

あくまでも、「あげてみた」です。自分の中でもまだまだ確定じゃない部分があります。日が変わったら考えが変わる部分もあると思います。

1.割に合わない

「割に合わない」と思う日がとても多いです。やっているお仕事ともらっている給料が割に合わないという話ですが、実際自分の貰ってる額は10代で働く人達の平均年収160万と比較したときに、1年目で年収300万なので多い方だと思います。しかし、自分は同じ会社の大卒と比べると基本給が3万低いです。お仕事については既にお客様と会話したりサブリーダーをしたりなど同期の大卒よりも仕事しているため、「割に合わない」と感じてしまいます。ちなみに今年度の頭に賃上げ交渉はしています。

2.他人の敷いたレールを走ってる感

馬車馬の如く働いていますが、ときどき「あぁコレ他人の敷いたレール走ってるんだよな」と絶望します。上司に賃上げ交渉をして断られるのも納得しています。なぜなら他人の敷いたレールの上で文句を言ってるからです。人の船に乗ってる癖に文句言うやつはどれだけ出来るやつでもウザいです。船から落としたくなると思います。

3.無理に意識を高めている人が多い

これは以前のブログでも書いたのでよろしければご一読いただければと思いますが、無理に意識を高めている人が多いです。自分はナルシストで「夢中になっているものは自分です」と答えるような性格をしているので自己啓発は楽しいです。それに対して、自分たちの会社では自己啓発に納期を付けてプレッシャーをかけたりしています。うーん他人に強制するような自己啓発って・・・というモヤモヤと共生しています。

kanata-dev.hatenadiary.jp

今の会社の良いところ

反対に今の会社にも良いところが沢山あります。ポジションはSIer1次受けのベンダーで受託開発。派遣エンジニアさんはいますが外に仕事を投げたりもしないので、製造からリリースまでの全工程を自社で行っている。給料もそれなりに良い。変化を好むので意見はどんどん言える。丁度出来るPLが退職してしまったこともありサブリーダーとして起用してもらっている。などなど。

まとめ

高卒にしては額をもらっているのは確か。でも会社内の評価では一生苦しみ続けるのも確か。性格上どこの会社に行こうが、他人の作ったレールの上で走るのを嫌がるため不満が残る。以上、今日もまた1つ成長したので寝る(^_^)/~