本プロジェクトはゆめみの KMP エンジニアを希望する方に出す課題用のプロジェクトです。 本課題が与えられた方は、以下を詳しく読んだ上で課題に取り組んでください。
Android・iOS・Web・Desktop の中から2つ以上のプラットフォームを選択してください。
ただし、Android または iOS のいずれか一方、もしくは両方を必ず含めてください。
選択した2つ以上のプラットフォームで動作する、以下の要件を満たすアプリを Kotlin Multiplatform を使って作成してください。
- IDE・SDK・プログラミング言語については、基本的に最新の安定版を利用すること
- 最新の安定版以外を利用する場合は、理由も含めて README に記載すること
- サードパーティーライブラリについては、オープンソースのものに限り制限しない
- KMP + CMP もしくはKMP + Native(評価に差はありません)
各プラットフォームの最新の安定版で動作すること(パッチバージョンは無視しても良いです)
- Android
- iOS
- Web(Chrome)
- Desktop(mac/Win)
- 何かしらのキーワードを入力できる
- 入力したキーワードで GitHub のリポジトリを検索できる
- GitHub のリポジトリを検索する際、GitHub API(
search/repositories)を利用する - 検索結果は一覧で概要(リポジトリ名)を表示する
- 検索結果のアイテムをタップしたら、該当リポジトリの詳細(リポジトリ名、オーナーアイコン、プロジェクト言語、Star 数、Watcher 数、Fork 数、Issue 数)を表示する
- GitHub の public リポジトリの URL をお知らせください
- 別の方法で提出する場合はご相談ください(Git のコミット履歴が分かる形式が望ましいです)
- この課題とは別のコード(ご自身で公開されているOSS等)をもって課題の提出とすることをご希望の場合はご相談ください
| 概要 | 対象者 | |
|---|---|---|
| 高 | 必須(must) | 新卒 |
| 中 | あると良い(want) | 中途 |
| 低 | なくても良い (nice to have) | テックリード+ |
- 対象者と同じ優先度のものは主な評価基準となります
- 対象者よりも上の優先度の評価ポイントは必須のものとなります
- 対象者よりも下の優先度の評価ポイントは加点対象
| タイトル | カテゴリ | 優先度 |
|---|---|---|
| README の充実 | ドキュメンテーション | 高 (high) |
| 適切なコメント | ドキュメンテーション | 高 (high) |
| GitHub のプルリクエスト機能などの利用 | Git | 中 (middle) |
| 適切な gitignore の設定 | Git | 高 (high) |
| 適切なコミット粒度 | Git | 高 (high) |
| 適切なブランチ運用 | Git | 高 (high) |
| 簡潔性 | コード品質 | 中 (middle) |
| 可読性 | コード品質 | 高 (high) |
| 安全性 | コード品質 | 高 (high) |
| 保守性 | コード品質 | 中 (middle) |
| Kotlin の言語機能を適切に使いこなせているか | コード品質 | 中 (middle) |
| DI | アーキテクチャ | 高 (high) |
| マルチモジュール | アーキテクチャ | 中 (middle) |
| Unitテスト | アーキテクチャ | 中 (middle) |
| UIテスト | アーキテクチャ | 低 (low) |
| エラー発生時の処理 | UI/UX | 高 (high) |
| 画面回転・様々な画面サイズ対応 | UI/UX | 中 (middle) |
| Theme の適切な利用 | UI/UX | 高 (high) |
| ダークモードの対応 | UI/UX | 高 (high) |
| 多言語対応 | UI/UX | 低 (low) |
| マイクロインタラクション | UI/UX | 低 (low) |
| 3つ以上のプラットフォーム | UI/UX | 低 (low) |
| ビルド | CI/CD | 高 (high) |
| テストのCIチェック導入 | CI/CD | 中 (middle) |
| LintのCIチェック導入 | CI/CD | 中 (middle) |
| フォーマット | コード品質 | 高 (high) |
| Linter導入 | コード品質 | 中 (middle) |
| AI レビュー | CI/CD | 中 (middle) |
| 仮のデプロイ環境 | CI/CD | 低 (low) |
| Build Variant | アーキテクチャ | 低 (low) |
上記以外でも高く評価できるポイントがあれば同等に考慮します。
アピールする点があれば、README に箇条書きなどで記載してください。
ChatGPT等のAIサービスを利用することは、禁止しておりません。
利用にあたって工夫したプロンプトやソースコメント等をご提出頂くことで、加点評価する場合もあります。(減点評価はありません)
また、弊社コードチェック担当者もAIサービスを利用させていただく場合があります。 AIサービスの利用は差し控えてもらいたい等のご要望があれば、お気軽にお知らせください。