株式会社KDDIテクノロジー2023年インターン体験で学んだこと

# 初めに
![IMG_0768.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3540774/62106717-3b26-e89c-43fc-849e9a267bd9.png)



　[株式会社KDDIテクノロジー](https://kddi-tech.com/)のインターンに参加しました。そこで、学んだことを書きます。
　インターンシップの内容としては、メンター３人と新入社員５人に交じって、プロトタイピングとユーザーテストを体験しました。
* １～６日目：プロトタイピング
* ６～７日目：ユーザーテストとその準備
* ８～９日目：本記事制作
* １０日目：発表

***

# 学んだこと
1. プロトタイピングの必要性
2. UIを意識したデザイン
3. 開発者視点とユーザー視点にギャップが生まれること  
4. チーム開発におけるGitHubの便利さ  
5. チーム開発におけるコミュニケーションの大切さ  


***

## プロトタイピングの必要性

　私はそもそもインターンに参加するまで、プロトタイピングがどのようなものなのか知りませんでした。

***

* 　参加する前は、エンジニアは企画に参加するのではなく、予め何かしらこういうものを作ってほしいという要求がされます。それを実現するためにコーディングをしていて、一度完成したものにレビューを貰い、徐々に改良していくような開発方法を想像していました。

* 　参加後は、まず**企画の段階から簡易的なシステムを作り上げて、本当にその企画は必要なのかを検討するステップ**があることを知りました。

***

　私が担当した部分は、画面デザインと画面遷移の実装です。
１からコーディングをしてサイトを構築していくわけではなく、デザインの画像を背景に貼り付けて、実際に体験してほしいマニュアルの自動生成への画面遷移に使う機能を実装しました。


　プロトタイピングとは、**開発側が想定しているシステムが、本当にユーザーが必要としているかを確認するために、開発側が想定しているシステムを、ユーザーに伝えるための手段と**して行っています。ユーザーに伝えることができればよいので、実際の中身の部分を作るかどうかは、伝えたいこと次第であることを学びました。


***
## UIを意識したデザイン

　スケッチからデザインを清書にすることだけでもUIについて考えさせられることが多かったです。２日目あたりにデザイナーさんに時間をとっていただき作成したデザインを見ていただきました。そこで数々の問題点が発覚しました。
例えば
- **ボタンの機能がわかりやすいような色の選定**（例：機能の違うボタンの色が同じだと間違えます）
- ボタンや検索窓の配置（例：検索に重きを置くのであれば、中央に配置します）
- ボタンやアイコンなどが直感的にわかる文面なのか
- **何をする画面なのかを明確にする**

***

![修正前.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3540774/b0438fb8-5562-ac70-de65-ff28b40201fb.jpeg)
***
![修正後.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3540774/b8c3d5cf-413f-4d10-c923-a22f984f1aa3.jpeg)


***
## ユーザーテストの大切さ
![ユーザーテスト.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3540774/8d305842-dfca-161d-83fd-3c0e729bff7a.jpeg)


　開発をしている段階では、わかりやすいと考えていたUIも、ユーザーテストの段階では操作方法がわからず手間取ることがありました。また、ユーザーテストには想定しているユーザーの懸念点がほんとに改善してほしいことなのかを確認する目的もありました。

***

　ユーザーテストで、Aさんに操作していただいた際には、押してほしかったアイコン部ではなく、タイトルが書かれている場所を押していました。
　また、Bさんの場合は、画面に検索窓や、数々のアイコン類が配置されていて、できそうなことが多く操作に迷っているように見えました。
　この２つの事例から、ユーザーが直感的にわかるようなUIになっていないことがわかりました。つまり、ユーザーがわかると思って実装していたUIだとしても、ユーザーには伝わらないことがあることが知れました。

　**開発側の視点とユーザー側の視点のギャップ**がわかる、ユーザーテストは大切であることを学びました。


***
## GitHubの便利さ

![github_issues.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3540774/521b2258-c30a-3c2b-6dd9-fe412e1832ed.jpeg)

　githubでの、タスクの割り振りや進捗管理、コードの共有をした。
gitを触ったことはあったものの、eclipse内のGUIのgitのみだったため、gitbashのCUIベースのgitに初めて触ることができました。

　初めはファイルの作成方法すらわからず、コマンドを調べながら操作していたのでgitの操作に時間がかかっていました。しかし、エクスプローラーから直接ローカルリポジトリを触っても問題がないことを教えていただいてからは、画像の追加が簡単にできたりと便利に使うことができました。

　githubを使うことで、競合を避けるために同じファイルを触らない必要が出てきます。そのため、ファイルの命名規則や作業の分担を詳細に決めることとなり、チーム内でのコミュニケーションが活発になりました。そのおかげで、チーム内で分からないことが聞きやすい空気になりました。

　また、Issueを使ったタスクや進捗の管理は初めて経験しましたが、タスクが明確になるという点で使いやすかったです。また、タスク管理のために新たなツールを使わなくともよいことにもメリットを感じました。
***
## チーム開発におけるコミュニケーションの大切さ

![IMG_0753.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3540774/87113614-3729-4d22-d1d4-274943f75334.jpeg)

　初めは作っているものの概要を共有することができていたが、開発していくうちに、詳細についての解釈がずれてしまっていました。画面イメージが出来上がってから、「この画面は、本来想定していたものとずれている」と言われてしまいました。コミュニケーション不足で細かい解釈を共有することができずに、限られた時間の中で作り上げてから、認識にずれがあったことに気づき、それまでに行ってきた作業が無に帰すのは、とてももったいないことをしました。
　一度ギャップを感じてからは、**積極的にコミュニケーションを図り、作る前や作りながら感じた疑問点はすぐに解消する**ようにしました。チームでコミュニケーションをとることで、自分の考えとチームの考えとのギャップがなくなり、目的とずれたものを作成することがなくなりました。

***
# 感想
　インターンシップに参加することによって、さまざまな経験をしました。
　今回参加したインターンでは、社員の皆様がいい人ばかりだったため、はじめてのことが多かったですが、わからないことをすぐに聞くことができました。また、実際に仕事をしているフロアでの実習だったため、会社の雰囲気を知ることができ良かったと思います。
　プロトタイピング実習は3週間ですが、インターンの期間は2週間と実習の全日程に参加できなかったのは残念でした。また途中参加のため、目標の認識を合わせることに時間がかかりました。しかし、プロジェクトへの途中参加も珍しいことではないと聞き、いい経験となりました。
　参加するまではインターンへ参加することに不安を感じていました。しかし、実際に参加した後ではサポート体制がしっかりしていて、学びが得られることも多く、とても良い経験になりました。もっと早くインターンに参加しておけばよかったです。