コードを書くだけがエンジニアの仕事と思ったら大間違いっていう話

こんにちは。

フリーランスエンジニアのシュンです。

 

エンジニアの仕事と聞いてあなたはどのような仕事を思い浮かべますか?

「一日中パソコンと向き合いコードを書き続ける」

「パフォーマンスの向上のために、コードの書き換えを行う」

などコードに関する仕事をしているイメージが大きいと思います。

 

でもエンジニアの仕事って実はそれだけではないんです。

今回は、コードを書くだけじゃない、エンジニアのコードを描く以外の仕事について洗いざらい話していこうと思います!

それでは行ってみましょう!

エンジニアの仕事

まずはエンジニアの仕事について大まかに見ていきましょう。

エンジニアの仕事は大きく4つのフェイズに分かれています。

 

要件定義

内部設計

実装

テスト

 

の4つです。

あなたがイメージしている「コードを書く」と言う仕事は、4つのうちの1つである「実装」の部分です。

つまり残りの3つのフェイズでは、エンジニアはコードを書く以外の仕事をしています。

要件定義

要件定義は呼んでその名の通り、「要件」を「定義」する作業になります。

 

例えば「ユーザーの新規登録フォームを作る」と言うタスクを与えられたとします。

 

一言に新規登録フォームと言ってもフォームってアプリによって多種多様で

「emailは絶対必要なの?」

「住所の入力欄はいるの?」

「フォームのデザインどうするの?」

などフォーム1つをとっても様々な要件を決める必要があります。

 

そのためそれぞれの要件をビジネスサイドの人間と話合い、定義する必要があります。

これが要件定義です。

 

要件定義は、エンジニアの仕事のフェイズの中でも一番重要と言っても過言ではないです。

なぜなら、要件定義が間違ったまま実装してしまうと、その実装がすべて無駄になってしまうからです。

エンジニアにもコミュ力が必要と言われているのは、要件定義が1つの理由になっています。

内部設計

要件定義ができると、次は内部設計に移ります。

内部設計は要件定義で定義した要件を満たすためには、どのような実装をすれば満たすことができるのか、を設計する作業のことを言います。

 

要件を満たすための方法は1つではなく複数あることがほとんどなので、その中から、ベストな実装方法をチョイスする必要があります。

また、使用しているフレームワークや、会社での決まりなども実装方法に影響を及ぼします。

そのため、適切な内部設計をするためには、経験、知識、ルールへの順応性など、様々な技術が必要になっていきます。

実装

実装です。

内部設計に基づきコードを書きましょう。

終わり。

テスト

実装が終了すると、次はテストに入ります。

テストでは

「要件をしっかり満たせているか」

「バグがないか」

などを確認します。

 

例えば、「パスワードは4文字以上で英数字が混じっているものではないとダメ」という制約を実装したとすると

「パスワードが3文字以下だとエラー」

「パスワードが英語のみだとエラー」

「パスワードが数字のみだとエラー」

「パスワードが4文字以上で英数字が混ざっている場合のみ成功」

 

と様々なケースを調べる必要があります。

 

手作業でテストをする場合もありますが、Webアプリケーションを作る場合、テストコードと呼ばれる、テストをするためのコードを書いてテストを行います。

手作業でテストをすると、膨大な作業量になることはあきらかですよね。

Railsの場合はrspecなんかが有名です。

 

そしてそのテストをクリアすると、そのコードが本番環境に反映されていきます。

まとめ

今回は実際のエンジニアの仕事を噛み砕いて紹介していきました。

経験が増えていくにつれ、コードレビューやデプロイなどの作業も出てきますが、駆け出しエンジニアはこんな感じで仕事を進めていきま

 

僕はエンジニアはコードだけ書いていれば良いと思っていましたが、案外他の分野の仕事もあり、最初の頃は苦労しました。

プログラミングを勉強されている方も、自分で要件定義、テスト、などのフェイズを分けて勉強を行うと、勉強の刺激になって面白いと思います!

 

 

4980円のプログラミングスクール

プログラミングスクールに通いたいけど

  • 「値段が高すぎる」
  • 「実力がつくか不安」
  • 「しっかりした先生に教えてもらえるか不安」

と思ったことはありませんか?

 

でもそんなあなたの悩みは一気に解決するんです。

「月額4980円で現役フリーランスエンジニアに質問し放題なプログラミングスクール」

を作りました。

 

人数に限りがありますのでお申し込みはお早めに。