はじめに(よまなくてもいいぶぶん)
はじめまして。現在下流しかできないPHPエンジニア(SES)です。
前々から上流もっと触れられるようになりたいな、わからない部分を減らしたいなと思ってはいました。思っているだけでした。
しかし着実に歳も取っていくなか、この度記事を起こそうと思ったきっかけとなった社内の交流があり、SESの現状について触れる内容でした。
内容を抜粋すると以下のようになります。
ロースキルSES要員がヤバい(まさに私)
ただ単純にSESの案件対人材数の計算で言えば売り手市場のように見えるかもしれません。
しかしそれは過去の事であり、現状では、スキルのある人材が必要とされています。
社内の資料がとてもわかりやすかったですが、お出しできないためざっくりと調べた限りでも次のように述べられています。
- コロナで増加したIT投資が減少傾向。ロースキルではなく必要な人材だけ採る。2023年がターニングポイントであったと言われている
- 未経験/初心者は飽和状態
- 内製化の促進指向
- AI活用によるロースキル部分の人材不要化
- (ロースキル人材に対する)コスト削減
このように、統計の表面上は人員が不足しているように見えて、その実はやはりスキルのある人員のみが不足していると結論付けられるかと思います。
じゃあどうすれば
平たく言えば、単なるプログラミング能力のみではなく、コミュニケーションや顧客折衝など、AIに食われない方向性の技術が必須となっていくのだと考えます。
ということで、まずは顧客折衝を含む上流工程について本気出して考えていくこととなりました。
ChatGPTから、初学者~3か月/3~6か月/6~12か月のスパンでやっていくことを提示され、本記事は 初学者~3か月 を対象とした内容になります。
前書き終わり
上流工程の内容についてChatGPTに聞いてみた
上流をやろうと決めて下流しかできない人間(私)は何を思うでしょうか。
正直に申し上げると "何ができればいいのかわからない" でした。
なのでここはひとつChatGPTに聞いてみたいと思います。
初学者がまず始めたいテーマは5つ
- ユースケースを理解する、書く
- 機能一覧表を理解する、書く
- ER図を書く
- APIインターフェースを設計してみる
- 現場の設計書を読み解く
以上を挙げられました。
ユースケースについて
ユースケースとは
ユーザー、または外部システムが、そのシステムを利用して何をするかを文章で整理したもの とあります。
詳しく聞いてみると、
- 要件定義と基本設計のつなぎとなる
- 誰がどの目的でどうシステムを利用するかを明確する
- 過不足ない(余計、漏れがない)システムを作る効果がある
との事です。
また、書くポイントとして、
- 利用者(一般ユーザ、管理者、外部システムなど)を明確にする
- 目的を一行で書く(例:「ユーザが商品を検索して購入できるようにする」)
- 基本フローと代替フローを選別する(例: 在庫切れの場合: 決済エラー)
が挙げられました。
機能一覧表について
機能一覧表とは
システム全体の機能を階層的にまとめた表とのこと。
- 機能を大分類->中分類->小分類 に分割する
- 名詞 + 動詞で書く(例: 「ユーザ管理, ユーザ検索, ユーザ登録」
例としてECサイトの機能一覧表を提示してくれました。
| 大分類 | 中分類 | 小分類 |
|---|---|---|
| 商品管理 | 商品検索 | 商品一覧, 詳細表示 |
| カート | カート操作 | 追加, 削除, 数量変更 |
| 購入 | 決済 | 注文確定, カード決済 |
おすすめとして小さなアプリを作り、機能一覧表を作成してみよう!との事でした。
ER図について
ER図とは
どんなデータをどう持つかを設計する資料であり、設計スキルのなかでも評価されやすいとの事です。
- 必要なデータ(エンティティ)を洗い出す(例: ユーザ, 商品, 注文, 注文詳細)
- エンティティに属性をつける(例: ユーザ="ID, name, email")
- エンティティ間の関係(リレーション)を書く(一対多, 多対多など)
自分が知っているアプリを題材に書いてみよう!との事。(メ〇カリ, Twixxerなど)
API設計について
API設計とは
バックエンドとフロントエンド、他システムとの通信を定義する設計のこと。
実務でもAPI仕様書が不十分なせいで工数が爆増する事例が多く見られるため、こちらも重宝されるとのこと。
定義するものとしては以下が挙げられました。
- エンドポイント
- HTTPメソッド
- リクエスト, レスポンスの例
- バリデーション
- ステータスコード
例: 商品情報取得(POST /api/products)
{
"name": "Tシャツ",
"price": 2900,
"stock": 10
}
こちらも自作アプリのAPI設計書を書いてみる練習方法がおすすめとの事です。
現場の設計書を読み解く
ただ読むだけではなく、「設計する側」のつもりで読むこと
- ER図->画面遷移図->API設計書 の順で読むとわかりやすい
- わからない単語はすぐ調べる
- その設計がどんな画面を想定しているのか読み解いてみる
まとめ
以上がだいたい初学者~3か月を目安に学習していくといいとの指標でした。
大事なポイントとしては以下が挙げられるそうです。
- 要件から必要な機能を抽出できる
- 機能を構造化できる
- データ構造を設計できる
- API仕様書を読める, 書ける
- 既存の仕様書を読める, 指摘できる
続く...
安心安全のホワイト高還元SESに転職を考えている方へ
新しい挑戦に踏み出すことは、人生において重要な一歩です。 転職活動は自分自身を知り、成長する貴重な機会でもあり、夢や成長を追求するためには必要な要素の一つ になるかと思います。 どんな選択をされるにせよ、その決断があなたに取って素晴らしい未来を切り開くことを願っています! グラディートと一緒に誇れるエンジニアを目指しましょう!
■『株式会社グラディート』では受託開発・SES・ブランディングデザイン・事業コンサルティングなどを事業として行う都内のIT企業です。現在、不遇な待遇で困っているエンジニアさんは、ぜひ一度グラディートに相談してみてね!(年収査定・SESへの転職相談も承っております!)
株式会社グラディート採用情報はこちら▼
https://en-gage.net/gradito/
株式会社グラディート公式サイトはこちら▼
https://www.gradito.co.jp/