仕事詳細
【お願いしたいこと】
「みてね」Android版のネイティブアプリ開発が中心となります。
ただし、スクラム開発という開発スタイルの中で、ユーザーにとっての価値を中心にプロダクトバックログの優先度を決めているため、時には様々な分野の開発タスクを技術横断的に携わっていただくことはございます。苦手な分野の場合は、同じチームのメンバーとペアプログラミングするなどして知識・知見を積極的に共有し、チームとしての開発力を高めることを常に目指しています。
Androidアプリの開発以外に携わるお仕事の例としては以下のようなものです。
・iOSのネイティブアプリ開発
・Ruby on Railsを用いたサーバーサイドのAPIの開発、それに伴うDB設計
・各プラットフォームのコードレビューやプロダクトレビュー
・サービス・機能についての継続的なアイデア出し
【仕事の進め方】
今回、配属していただく「アプリ開発チーム」は現在8名で構成されております。
開発スタイルは、LeSS(ラージスケールスクラム)というフレームワークで行われており、内部には2つのスクラムチームが存在し、並行してプロダクトバックログを消化していくフローが敷かれています。
明確にチームリーダーは決めず、スプリントごとに各チームがリーダーを交代して担当したり、リリースごとにリリースマネージャーを交代して担当することで、プログラミングだけでなく、スクラムチームの運営やアプリのリリース管理まで、自分自身の手で扱うことができるようにしています。
他の職種・部署のメンバーと直接会話する機会も非常に多く、オープンで比較的会話の多い現場です。
開発組織全体としては、極限までフラットで動きやすい組織を実現するために、HRT原則に倣ったカルチャー作りを推進し、心理的安全性を守りながら、対話を繰り返し、変化への柔軟な対応ができるように行動・発言するようにメンバー全員が心がけています。
【今後の技術課題】
現状、組織やコードベースに課題は沢山あります。
もし以下のような課題の解決に興味があれば、是非ご応募ください。
・豊富なアイデアや企画、ユーザーからの要望を高速に開発し、提供し続けていくこと。
・レガシーなコードを常に改善することで不具合を減らし開発速度を上げていくこと。
・組織をスケールさせていくために必要なコードベースの改善や設計の見直しを行うこと。
・継続的なOSや言語・ライブラリ・IDEのアップデートへの迅速な対応を行うこと。
・コンポーネントデザインやインタラクションを常に最新のトレンドやガイドラインに沿うようにすること。
・よりスケールした大きなチームでも効率的に開発を行っていけるような、コードレビューやプログラミング、設計のガイドラインを構築し、アップデートしていくこと。
【開発環境】
◆Android
Kotlin, MVVM, Kotlin Coroutines, RxJava2, Retrofit2, OKHttp3, Dagger2, WorkManager, Room, Android Architecture Component, Circle CI, Glide4, Firebase
◆iOS
Swift, MVP + Clean Architecture, RxSwift, Alamofire, Bitrise, Firebase
◆サーバー
Ruby, Ruby on Rails, Sidekiq, AWS Aurora, Unicorn, Nginx, Circle CI, FFmpeg, ImageMagick
◆Webフロントエンド
TypeScript, React + Redux
◆インフラストラクチャー
Amazon Web Service, BigQuery, Re:dash, OpsWorks, AWS EKS (Kubernetes), Terraform, Helm, Fluentd, FulentBit, New Relic, CloudWatch, Grafana, RDS, S3, SageMaker, ALB, Athena, GuardDuty, Kinesis...