【向き不向きアリ!?】残念だけどプログラミングに向いてない人の3つの特徴
はい、どうも!
フリーランスエンジニアの南だいすけです!
今回は【向き不向きアリ!?】残念だけどプログラミングに向いてない人の3つの特徴
について解説していきたいと思います!
実際勉強してエンジニアになってみても、自分が向いていなかったら悲しいですよね。。
なので現役フリーランスエンジニアが解説していきたいと思います!
また最後に私のこれまでの経験を通した結論を述べているのでぜひ最後までみてみてください!
耳で聞きたい方はこちら↓
向いていない人の3つの特徴
・細かい作業が苦手
プログラミングは実に細かい作業です。
まず全角で打つと基本的に英語で怒られますし、
一文字違うだけで全く違う結果になったりエラーになってしまいます。
型も正しいものでないとそれは許容できないとエラーがおきます。
なので一文字一文字を正確に判断できない方は向いていないです。
また基本的に変数や関数は自分で名前をつけるのですが、
これに関しても適切な名前をつけなくてはいけません。
「こんな感じでいいや」と適当な名前をつけてしまうと、
後々なんのことかわからないので自分自身もわからなくなるどころか、
チームでの開発だと仲間にも迷惑をかけます。
例えばサイズを変更する関数だった場合、
「change」だけではなんのことなのかわかりません。
「resizeView」みたいな感じだとviewのサイズを変更するんだなと読み手が想像しやすいと思います。
バグを直す作業一つ取ってもログをしっかりみて、どこでつまづいているか確認する必要があります。
ここも結構細かな作業なので大雑把な方だと向いていないと言えるでしょう。
・好奇心がない
プログラミングだけではなくIT業界というのはものすごい勢いで進化していきます。
なので自主的に勉強ができない人はすぐに置いて行かれます。
新しい機能や言語があっても触ってみたい!とか使ってみたい!と好奇心がないと入ってから辛いかも知れません。
機能の実装についても試行錯誤の繰り返しなので、
「これをこうしたらこうなるのか?」と
やはり好奇心を持って作業ができない人は向いていないかもしれません。
また作るもの自体にもある程度好奇心を持って作る必要があります。
全く興味なく作ってしまうと、後々導線の追加や逆にここはフェーズ1ではなしで!と言われた際に修正に時間がかかってしまうからです。
なので作りながら「こういう感じで使われるんだろうなー」とか
「ここはこうの方がいいんじゃないのか?」など、
いろいろな場面を想像しながら作ることが大切です!
逆に「こうしたからこうなるはず!」「早く確認したい!」というタイプの方は向いていると思います!
・効率を重視しない
プログラミングとはいかに怠惰になれるかというシステムです。
結論からいうとプログラミングとは、将来めんどくさくならないようにプログラムを作ることが仕事です。
なのでここをもっと簡略化したらより楽になるとか、この値はもっと早い段階で持たせたい、この機能は早いうちに共通化しておこうなど効率を重視する必要があります。
なので機能を実装する上でこうしたらもっとより良いコードになるというのを常に考えて私たちはコードを書いています。
またタスク管理においても何に優先度を持たせて進めていくのか、
どこから作業したら効率的に進むのかというのを考えることが大切です。
これができない人はどんどんスケジュールが遅れていくので、ちょっと辛いと思います。
何かを伝える上でも効率よく伝えることが強く求められます。
例えば通販アプリで決済画面に移動しないバグが見つかったとしましょう。
「決済画面に移動しないバグが見つかりました!」だけではなく、
「決済画面に移動しないバグが見つかりました!おそらく先日ここの機能を大幅改善したのが原因だと思います。具体的に〜ViewControllerの移動するコードがおかしくなっていないか、みてみる必要がありそうです!」
と言った感じで具体的に伝えることでその後の行動が効率よくなります。
逆に前者だと、「で、なんなの?」と言われてしまう可能性が高いです。
やはりプログラミングをする上で効率を重視することは大切と言えるでしょう。
経験を通した私の結論
いかがでしたでしょうか!
先ほど話した項目に当てはまらない方はプログラミングをする上で適性があると思いますので、そのままエンジニアになっても大丈夫です!
逆に一つでも当てはまる方は残念ですが。。。。
とはなりません笑
実は先ほど話したことももちろん事実なのですが正直あれは慣れですし、
ある程度どんな仕事にも当てはまるものだと私は思います。
またプライベートと仕事は別だと思うので普段は先ほどの項目に当てはまる人でも仕事だと当てはまるとは限らないからです。
それよりもとにかく大切なのはググり力です。
基本的にプログラミングはカンニングOKの仕事で、むしろそのカンニングがいかに早くできるかで仕事が早いかそうでないかが別れると言っても過言ではないくらいです。
なのでそうなれるように日々作業を繰り返し、コードに触れることで経験を積みあげることが大切なのです。
あとはパソコンの基礎的な操作ができることが前提ですがこれも慣れです。
皆さんもはじめはインスタやツイッター、スマホゲームなど完璧に扱うことはできませんでしたが、毎日使っているうちにできるようになっていったと思います。
あれと一緒です!
バグにしても実装にしても結局慣れです。
大切なのはどれだけその作業に触れて作ってきたかという経験と時間だと思います。
実際にプログラミングをはじめたてのころの私はどんなバグでもいちいち調べないと解決できませんでした。
今はよく起こるバグでしたら「あーここを直せばいいのか。」と
ある程度検討がつきます。
これも経験と慣れからきているものです!
なのでいろいろいってきましたが、
プログラミングにおいてこれと言った向き不向きはないと私は考えます。
私自身も正直昔はパソコンめっちゃ苦手でしたし、文系なので数学とかも苦手ですw
ただ1つ重要なことがあるのでこれだけは覚えておいて欲しいです。
それは学ぶことが好きになれるかそうでないかです。
学ぶ=それが自分の価値になるからです。
ここで勘違いして欲しくないのは学ぶと言っても今まで学生の時に学んできたような感じではないです。
あれはすぐに学んだことが生きないからあまり面白く感じなかったし、なんなら未だに歴史の知識など使ったことはないですよね?笑
プログラミングはちょっと違って、学んだら学んだだけ仕事が楽になりますし、その分自分のできる範囲が広がるので自分の市場価値が上がります。
この市場価値に関してはIT業界は顕著にでます。
具体的にフリーランスだと単価に直接影響するからです!
これを聞くとちょっとモチベーションが上がりませんか?
「ちょっとそれなら勉強してみたい!」と思えたあなたはエンジニアとして十分やっていけるでしょう!
さいごに
最後まで読んでいただいてありがとうございました!
少しでも読んでくださった方の力になれたのなら幸いです。
本来なら自分のやっている情報商材の案内などをするところなのでしょうけど、私はやっていないのでYouTubeチャンネルとTwitterの紹介させてください!
YouTube:
Twitter:
これからも役立つような情報を発信していきますので
気に入って頂けたらスキやフォローをしていただけると嬉しいです!
コメントも大歓迎です!お待ちしています!
ではまた次の記事でお会いしましょう!
この記事が気に入ったらサポートをしてみませんか?