けんたろうちゃれんじ

無謀にもほぼ無貯金でフリーランスになった男が日々感じたことなどを書き留めるブログ。

「退職したい・・。」「フリーランスエンジニアになりたい。」その退職、ちょっと待った!!

どうも~~!けんたろうです!!

 

私が前職の会社を退職してから、約1ヶ月半が経過し、今はフリーランスのエンジニアとして、とある企業さんに常駐し仕事を行っています。

 

▶退職する時の話はこちらになります。

kentarou-blog.hatenablog.com

 

世間では最近 "フリーランス"という働き方が広まってきて、もうフリーランスという言葉を知らない人はほぼいないのではないだろうか、というレベルにまで浸透してきている印象を受けます。

 

f:id:kentarou_blog:20190209103817p:plain



 

ちなみに、アメリカでは3人に1人がフリーランスという調査結果も出ております。

そんな状況だからこそ、最近妙に「会社員はクソ!」、「いつでも社畜してるのw」、「フリーランスになればお金ガッポガッポw」、「さぁみんな!!会社員なんて辞めてフリーランスになろう!」なんて声が挙がっています。

 

上記の言葉を否定はしません。皆さんがお勤めしている会社に因るところが多く、正直ここに関しては個人の認識になると思うからです。

 

けど、必ずしも全員がフリーランスになって成功するわけではありません。

まだ実際にフリーランスエンジニアとして活動を始めてから1週間しか経っておりませんが、自分なりに"こういう人"や、"こういう状況"の場合は会社員の方がいいんじゃないかなあ、と思っているのでつらつらと書いていきたいと思います。

 

 

 

■前提

本記事ですが、以下の前提で書いております。

 

・IT業のエンジニア

・プログラミングのスキルなどが未熟

 

 

 

■基礎的な知識を網羅していないなら退職するな!

まず初めにこれだけはお伝えしておきたかったです。

ここで言っている基礎的な知識というのは以下のようなものです。

 

  • プログラミングスキル
  • 仕様書やUMLの見方
  • プロジェクトの進め方(設計~リリースまでの流れ)

 

 

f:id:kentarou_blog:20190209103714p:plain

▶プログラミングスキル

プログラミングスキルに関しては判定が難しいですよね。

どこまで行ったら基礎的な知識を網羅していることになるのかと。

私が思う基礎的な知識とは、「特定のプログラミング言語の入門書を購入した時に、その入門書を丸々理解できているか。」です。

それこそ「入門書内の例題をリファレンス以外のWebページ情報を得ないで全て正答できますか?」と言い換えてもいいかもしれません。

それが出来ない、もしくは不安があるという人は基礎的な知識が網羅できていないです。

 

でもこう思う人もいるはずです。

「今時コードなんて、ネットで検索すれば出てくる。それを使えばよくね?」

いや、良くないですよ。基礎的な知識が網羅できていない人が、そのコードが正しいか、もっと効率が良いやり方はないのかと考えられますか?

 

また、入門書のレベルについて丸々理解しているような人でない場合、エンジニアとして仕事をしていく上で話が通じない場面も登場します。

私も一部うっすらとなぞった所だけの知識があって、その内容についての話になった時に相手の言っていることが「分かるけどワカラナイ」状態になりました。

 

▶仕様書やUMLの見方

仕様書に関してはあなたがこれまでに体験したプロジェクトの仕様書が正ではないと思っておくべきです。プロジェクトによって粒度なんか全然違いますもんね。

では、仕様書という観点で考えた時の基礎とはなんでしょうか。

これは簡単に「基本設計」や「詳細設計」のフェースでどのようなものを作るのかといったざっくりとした考え方で良いと思います。

繰り返しになりますが、プロジェクトによって粒度は異なるので、ここに関しては「何かのWebサービス等を立ち上げるにあたって、どんな仕様書が必要になるか、その中身は大体どんな内容になるか」を頭の中で考えられればOKだと思います。

 

UMLに関しては入門書の内容をざっくりと理解しているかという観点で見ていきましょう。

「そもそも何をするものなのか」、「どのように記述するのか」は最低限押さえておかなければいけません。

私はこれまでプロジェクトで一切UML関係のドキュメントが存在しておらず、今の仕事ではバンバン登場してプロジェクトギャップに驚いています。笑

学生時代に使っていた参考書を引っ張り出して、改めて勉強していこうと思っています。

 

▶プロジェクトの進め方

もうこちらに関してはざっくりでいいと思います。

プロジェクトに参画したことがある人は、進捗会議にも出席されたことが有ると思います。

その経験があれば大丈夫だと思います。

プロジェクトの全体スケジュールと、それを細分化したタスクなどを見たことがあれば一発でOKだと思います。(PM/PLとかの人と、経験の浅いエンジニアではまた話が変わってくるのですが、今回は後者で考えているので、プロジェクト管理的な概念はすっ飛ばします。何より、私もワカラナイ)

 

 

■主体性のない人やプライドが高い人は退職するな!

 

プロジェクトを円滑に進めていく要素が、主体性とプライドだと思っています。

 

▶主体性のない人

何かしらのプロジェクトに配属されると、当たり前ですがリーダーや他のエンジニアがいます。基本的にはその人達から指示や作業をもらうことになりますが、何かの作業に行き詰まった時や、作業が完了した時など、自分から相談・報告にいけますか?という話です。

プログラミングスキルが備わっている人でも、主体性がない人はチームとしては扱いづらいです。

受け身ではなく、自分からプロジェクトを円滑に進めていこうとする意思がない人は周りの印象も悪くなるし、印象が悪くなるとまた萎縮して受け身になるし、、の悪循環ですね。

もちろん、どんなに欠点があってもそれを補える程の圧倒的な専門スキルがあれば別ですが、この記事はプログラミングスキルが未熟なエンジニア(私のような人)向けに書いているので、主体性のない人は問題として扱います。

逆に言えば、主体性さえあればコーディングが少し出来なくても問題ないというのが体感です。もちろん出来たほうがいいのですが、主体性のある人は往々にして上手く報・連・相が出来ます。そういう人はチームとしてはありがたいです。

 

 

▶プライドが高い人

 

f:id:kentarou_blog:20190209103738p:plain

上述したとおり、この記事はプログラミングスキルが未熟なエンジニア向けに書いています。

なのにプライドが高い人っていうのはもうワケが分からないですね。

ハッキリ言って、そこらの低レベルエンジニア(もちろん私を含めた、というか私のようなエンジニア)はプライドが高くて得をすることは一切ないです。

新たな知識も得られないし、人間関係の構築が難航しますし。

主体性の方で語った通り、圧倒的な専門スキルがあればこちらも問題ありません。

というかそんなスキルがあるならプライドが高いのも頷けるな、という感じですよね。

でも、基本的には要らないものだと思っています。

 

 

■本日のまとめ

 

・プログラミングスキルの基礎:入門書を丸々理解できているか。
・仕様書の基礎:それぞれの仕様書の概要が分かるか、内容はどんなものになるかを理解しているか。
・プロジェクトの進め方の基礎:プロジェクトに参画したことがあれば大体OK
・主体性のない人、プライドが高い人はプロジェクトを円滑に進めにくい。

 

■最後に

 

色々と書いてきましたが、スキルのない状態で会社員を辞めてフリーランスエンジニアになった私は現在四苦八苦しながらも充実感のある生活を送っています。

 

新たな環境でこそ得られる知識、それこそ前職では全く行ってこなかったUMLを作成したり、新規ロジックを作成したりと分からないことだらけではあるのですが、とても楽しいです。

しかしそれは、自分で言うのも恥ずかしいのですが、私が主体性のある人間であり、プライドが低い(笑)からこそなのかなぁとも思っております。

 

フリーランスエンジニアになるメリットはいくつもあります。

 

メリット

・収入の増加

・条件で案件を絞れる(最寄り駅、業種など)

・時間にゆとりができる

 

なので、フリーランスとして働くということに関しては私個人としては大賛成なのですが、もし過去の自分からフリーランスになりたいという相談を受けた場合は反対します。

もうちょっと基礎を学んだほうがいいよ、と。

その基礎というのが今回書いた内容になります。

退職する時に上司から「もっと基礎を身に着けてから」なんて言われたのですが、その基礎というものを細分化して言ってくれなかったので、「俺は基礎はもうできてる!」なんて勘違いをして勢い余って退職しました。

結果としては新しい現場ではこんな自分に、基礎から教えてくれるリーダーや同僚がいたことにより楽しく仕事が出来ている = 退職して正解だったということになると思うのですが、全員が全員こんなことはないと考えています。

それこそ時間で会社と直接契約している会社員と異なり、フリーランスエンジニアは成果に対してお金を頂いているようなものですし。

なので、少しでもフリーランスエンジニアになった後に成功する(最低限仕事がもらえるレベル)になるためにも基礎的な知識があったほうがいいですよ!というお話でした。