美容総合サイト@cosmeの開発を牽引するAndroidエンジニア募集!
自社サービスであるユーザ向けの@cosmeのAndroidアプリの開発を一手にお任せします。また、既存コードの書き換えなども開発調整の上積極的に行なっていただけます。
企業としてのミッションを【Beauty×ITで想起される世界で一番の会社になる】と定義づけており、現在その実現に向けて@cosmeというメディアだけでなく、ECや実店舗など広く事業を広げているフェーズとなります。
※例として、大型実店舗ではスマホアプリと連動させ、来店者の購入履歴やサンプルの利用履歴、肌の悩みなどを把握等々、顧客の滞在時間や移動経路も調査が可能になるようサービス開発を進めております
ユーザーサービスを包括的に改善していくとともに、Web版・iOS/Android版各デバイスの良さを活かしたより最適なUI/UXを目指して開発をして頂きます。
■概要
・スマートフォン向けアプリケーション開発に伴う、Androidアプリの設計・開発
・その他 スマートフォンに関連する先端技術の調査・導入
■具体的な仕事内容
・新機能の開発
・PMやデザイナー、サーバサイドエンジニアと連携したチーム開発
・非技術部門との仕様策定・調整
・ユーザーを中心に据え、エンジニアリング視点から改善点の分析/検討/実施
・チームメンバーとの相互コードレビュー
・品質改善
■開発環境
・言語:JavaまたはKotlin
・主要ライブラリ:RxJava2, Retrofit, OkHttp, Picasso, Orma, Dagger, PermissionsDispatcher, Mockito, Robolectric など
・設計:Clean Architecture、MVVM
・ソースコード管理:Git、GitHub
・プロジェクト管理:JIRA
・チャットツール:Slack
・情報共有:Confluence
・CI環境:CircleCI
■仕事の魅力
・サービスへの関わり
要件定義段階からミーティングに参加し、エンジニア目線での提案を行っています。また、エンジニア側で先行して調査・検証した機能を企画側に提案してアプリに導入することもあります。
・開発メンバーの裁量
設計やライブラリ、言語などについては、都度求められる環境や条件に応じてチームで相談しながら選定を行っています。開発ツールなどの個人の環境は、各自の責任で好きなものを使うことができます。
・コード品質向上のための取り組み
コードレビューや、社内勉強会などを行って設計手法の説明などを行っています。
また、コードレビューにおいては単純にいい悪いではなく、「どうしていいのか悪いのか」、「デファクトやトレンドではどうなのか」といった成長を意識したコメントをやり取りすることも多いです。
・テストの実施度
既存プロジェクトによってはテストコードがないものもありますが、改善のために徐々に導入しています。
・ワークフローの整備
基本、全てのコードをバージョン管理ツールで管理しています。各メンバーが実装したコードのマージは Pull Request ベースで行われます。
・オープンな情報共有
定期的に社内勉強会を開催したり、Slackによる情報共有や議論の文化が根づいています。#git、#ios、#android など各種トピックごとのチャンネルが充実しています。
・メンバーの多様性
開発メンバーの新卒採用を実施しています。
・技術カルチャー
新規開発ではいろんな言語やアーキテクチャの導入なども積極的に行っています。Clean Architecture のような設計手法を取り入れたり、新しいライブラリを利用したりと問題解決のためにいろんなものにチャレンジしています。
■社内の雰囲気
開発チームではKPTを使用した振返りを通して短いスパンでの改善を繰り返し実施していて、できることから良くしていこうという雰囲気があります。何かあった時は、垣根を越えて様々な部署・チームに相談できる職場です。
■必須要件
・JavaまたはKotlinでのネイティブアプリケーション開発経験
・基本的な設計技法、オブジェクト志向の概念理解
■歓迎要件
・Clean Architecture、MVVMに基づいた開発経験
・ユニットテスト・UIテスト自動化の経験
・オープンソースソフトウェアコミュニティでの活動経験
・Pull Request 機能を用いたチーム開発経験
■求める人物像
・アプリやインターネットが好きで、ITの可能性を信じている方
・新しい知識、技術を貪欲に吸収する意欲のある方