Fusicってなんしようと?What is Fusic doing?

2017/12/06 OJTレポート「Timney(勤怠管理システム)のご紹介」#浦田レポ

2017年度新卒入社の浦田 大貴が、当社のOJTで作成した社内システムをご紹介します。

※Fusicでは、エンジニアの新入社員に対し、約半年間の教育制度を導入しています。
 その期間のうち約2ヶ月間は、エンジニアとしての技術力向上や、
 一人でクライアントとやり取りができるようになることを目的とし、OJTを実施しています。

================================================

【システム名】
Timney(勤怠管理システム)


【システム種別】
業務系システム





【セールスポイント】
①社員の有休消化状況を可視化。自分の使った有給休暇数と使える残有給休暇数が一目でわかる。
②使いやすさにこだわったUIとモダンなデザイン。
③単一ページでコンテンツの切り替えを行えるSPA(Single Page Application)というアーキテクチャを取り入れ、
 高速なページ遷移を実現。


Timney(勤怠管理システム)とは、出勤、欠勤、休暇などの社員の勤怠状況を管理するシステムです。

社内には、すでに勤怠管理システムが存在していましたが、作成から一定の期間が経っていることもあり、
デザインを一新し、社員が使いやすいように作り直しました。
今回は見た目や使いやさすさにこだわったため、Angularという最新のフロントエンド技術を取り入れて開発しました。
これにより、高速なページ遷移や、インタラクティブなアプリケーションを実現することができました。

ちなみに、Timneyという名前は、「Time is money(時は金なり)」に由来しています。
時間はとても大切です。決して取り戻すことはできません。
このシステムを使って計画的に休暇を取得し、社員に仕事の時間もプライベートの時間も充実させてほしい
という願いも込めて名付けました。





【開発期間】
4ヶ月


【技術】
Ruby on Rails5、Angular4、AWS(S3、Amazon SES)


【難しかったこと】
旧・勤怠管理システムからのリプレイスとのこともあり、移行後も旧データが問題なく運用できるような
データベース設計や移行処理プログラムの作成などに悩みました。
さらに、有給休暇に関するルールの部分をプログラムでなかなかうまく実現できず、時間がかかりました。


【頑張ったこと】
見た目にはこだわりました。完成イメージが湧きやすいよう、画面設計段階から具体的な画面イメージを作成し、
開発期間中も使っていて楽しくなるような可愛いデザインや直感的に使えるような使いやすさなどを意識して作りました。


【OJTを通して学んだこと】
OJTでは、わからなくても先輩方にどんどん聞けるので、
自分の知らない技術に失敗を恐れずにどんどん挑戦していくことができました。
結果として多くの技術的知見がたまりました。
開発以外では要件定義、見積、画面・DB設計などを経験することができ、
プロジェクトの進め方をひととおり知ることができました。