目次
はじめに

僕がプログラミング未経験からIT業界に飛び込んで、半年以上経ちました。
この記事は、
未経験プログラマーの僕が、現場で使える役に立つ考え方や情報を厳選してみたよ!
という内容になっています。
- コード書くこと以外に現場で必要なことって何?
- 上手く質問ができないんだけど、どうしたらいいの?
- ちゃんとスキルアップしていくには、何に気をつければいいの?
このような悩みがある人にはヒントになるはずです。
なぜこんな記事を書こうと思ったのかというと、

情報が多すぎて自分に必要な情報がわからない…orz
こんな悩みを持った駆け出しプログラマーは他にもいるはず!
と思ったからです。
あくまで僕の主観でまとめていますので、中には「自分には必要ないな」と思うものもあるかもしれません。
ですが、現場で助けとなる考え方やヒントが多く、学べることはあるはずですよ^^
- 仕事でコーディング技術以外に必要なスキルがわかる
- 先輩エンジニアも自分も困らせない正しい質問の仕方がわかる
- どうやってスキルアップしていけばいいのかがわかる
未経験からのエンジニア転職で最低限現場から求められるスキル・レベル感

未経験からのエンジニア転職で最低限現場から求められるスキル・レベル感
グサッ!ときた言葉
ひとりで悩みすぎないようにルールを決める
これは本当に気をつけてほしいです!
僕もエラーや問題にハマることが多いんですが、1〜2時間悩み続けて答えが出なかったってこと少なくないんですよ。
時間を浪費するだけでなく、成果が出ないことで自分を責めてしまいがちです。それに、生産性が下がるので負のループになりやすいんですよね……
どう行動すればいい?
悩んだ時のために事前にルールを決めておきましょう。
僕はこんな具合にルール化しています。
- まずtypo(打ち間違え)を疑う
- シングルクォーテーション(’ ‘) or ダブルクォーテーション(” ”)を疑う
- 15分悩んだら質問する(15分で調べられた結果が今の自分の限界だと割り切る)

あ、コイツはちゃんと自分なりに調べた上で質問してるな。
とイライラされることなく、優しく教えてくれるはずですよ。
エンジニアで稼ぐために大切な20のコト

グサッ!ときた言葉
技術バカになるな
プログラミングスキルを向上させるのはもちろん必要です。
ですが、学ぶべきことは他にもたくさんあります。
プログラミングはあくまでサービスを提供するツールの一つなので、利益を出そうと思ったら
マーケティングやアイデアが必要になってきます。
それに、技術だけで戦おうとしたら世の中にはとんでもなく技術力の高い人たちがゴロゴロいらっしゃるので、とても太刀打ちできません。
どう行動すればいい?
普段自分が使っているアプリやWebサービスに注目してみましょう。
なぜ使っているのか考えてみるとわかりやすいです。
僕の場合、KanbanFlowというタスク管理のWebサービスを使っているんですが、
- 無料で使える
- デザインがシンプルで無駄がない
- 操作が直感的でわかりやすい
特にアプリ開発やサービスを作ろうと思っている人はアイデアのヒントになるので、
身近なものから学ぶ姿勢は大切ですし、オススメです。
質問は恥ではないし役に立つ

グサッ!ときた言葉
「魚をくれ」じゃなくて「魚の釣り方」を教わるようにする
プログラミングにエラーはつきものですよね。
特にプログラミング初心者はエラーの内容が把握できず、どうしていいかわからないという状態に陥りやすい……orz
だからといって、

エラーが出たんですけどサッパリわからないんで、教えてください!
と、質問を丸投げするような聞き方では、質問された先輩エンジニアは困ってしまいます。
それになぜわからなかったのか考える前に質問してしまうと、自分のためにもなりませんよね。
どう行動すればいい?
参考サイトに質問のテンプレートがあるので、そちらを使ってみてください。
使いやすいよう自分専用にカスタマイズすることをオススメします。
僕は以下のようにカスタマイズして使っています。
- やりたいこと
- わからないこと
- わかっていること
- やったこと
- ○○だと思う
- どうすればいいか聞く
【 】の中に、上記のテンプレートに沿って当てはめてみるとこんな感じです。
- 【メールの未読件数を表示】したいんです。
- 【メールを取得するSQLの条件をどう設定すればいいのか】わからないんですが、
- 【この処理の中でSQLを書けばいいこと】はわかっているんです。
- そこで、【自分なりに条件を絞ってSQLを書いて】みました。
- 【設定する条件が間違っていたと思う】のでうまくできなかったんですが、
- 【どう実装すればいいですかね?】
これが正解とは言えないので、参考程度にしてくださいね(^_^;)
ただ、仕事を始めたころよりは明確に質問できて問題を解決できるようになってきました。
ぜひ自分なりの質問しやすいテンプレートを作ってみてください。
【プログラミングの考え方】初心者から中級者になるためのコツを紹介

【プログラミングの考え方】初心者から中級者になるためのコツを紹介
グサッ!ときた言葉
行動する前にやりたいことを言語化する
仕様書や設計書を見て、最終的にこんな機能が必要だなと把握できれば問題ないです。
ですが、僕のようにまだ経験が浅いプログラマーだとイメージがしにくいんですよね〜。

やりたいことはわかるんだけど、どうやって実装したらいいの?
と途方に暮れてしまうことも…(^_^;)
どう行動すればいい?
ロジックをいきなり書くのが難しいときは、まず文章でやりたいことを箇条書きしています。
思考がクリアになりますし、自分は具体的に何がわかってないのかハッキリさせることができます。
ポイントは、細かくやりたいことを書いていくこと。
例えば、仮にTwitterのツイート画面を作成するとします。

これを文章で書いてみるとこんな感じです。
- ツイートを書く欄に未入力の場合、「いまどうしてる?」という文字を入れる
- 文字数に制限を入れる。
- 各アイコンにイベントを実装する
- もし文字制限以上に入力していたらメッセージを表示する
- 「ツイート」ボタンを押されたら登録処理を実行する
と具体的に書いていきます。
すると、

「ツイートを書く欄に未入力の場合、「いまどうしてる?」という文字を入れる」ってどうやって実装するんだろう?
と疑問が具体的になります。
こうすると、わからないところが何か把握できて質問の意図が伝わりやすくなり、質問される人も答えやすいはずです。
ロジックは書けない時はとりあえずやりたいことを文章にしてみましょう!
コピペするプログラマに足りないもの 〜 プログラミング脳の鍛え方

コピペするプログラマに足りないもの〜プログラミング脳の鍛え方
グサッ!ときた言葉
小さなプログラムでも、全部一人で自分の頭で作る経験をした方が鍛えられる。
コピペで作る経験をいくら積んだとしても、コピペがうまくなるだけだ。
先輩エンジニア書いたコードは機能的かつ美しいコードが多いです。
ただ、初心者プログラマーはよくわかっていないコードをそのままコピペするのはオススメできません。
どうしてかというと、思わぬエラーを発生させてしまうことがあるからです。
しかし、仕事だと「この日までに実装してくれ」という決められた期限があります。
期日内に実装を完了させないといけないのに、自分の学習を優先しすぎて実装が遅れてしまうのでは現場は困ってしまいますよね。
どう行動すればいい?
そこで僕が気を付けているのが、
新しい処理やわからない処理をコピペする時は3〜5回写経しながらどんな処理をしているのか考えることを癖にしています。
何も考えずにコーディングするのはプログラマーとしてよくないですし、自分のためにもなりません。限られた時間でもやれることはあるはずので、常に学ぶ姿勢は大切です。
最後に

いかがだったでしょうか。
お!明日から使えるぞ!と思えるマインドが1つくらいは見つかったのではないでしょうか。
今回の記事でピックアップできなかったヒントが参考サイトにまだまだあるので、ぜひそちらの記事も熟読してみてください!
それと!
記事をカテゴリーごとに分類して、
- 未経験プログラマーが現場で役に立ったサイト5選【チートシート編】
- 未経験プログラマーが現場で役に立ったサイト5選【データベース&SQL編】
- 未経験プログラマーが現場で役に立ったサイト5選【Git編】
などを書こうかなーと考えています。
気が向いたときに覗いてみると、いい情報が転がっているかもしれません^^

以上、
「未経験プログラマーが現場で役に立ったサイト5選【マインド編】」
をお送りしましたー!