Client of FiniteHR, IT Product Development Company
Job DescriptionExperience & Technical Requirements:
• Minimum 5 years experience designing and implementing enterprise grade software.
• Strong knowledge of Java for Android and familiarity with mobile development challenges
• Familiarity with Android API Level 8 and up preferred, Level 14 and up required
• Proficient in the use of SCM tools (SVN, git, maven, stash), best practices and continuous integration.
• Understanding of code obfuscation & encryption techniques preferred
• Understanding of multimedia content delivery protocols such as HLS, Progressive download preferred
• Experience using media players on various mobile platforms
• A clear understanding of the difference between mobile product libraries, mobile applications and client-specific extensions
• Understanding of distributed multi-tier infrastructure.
Preferred Skills:
• Proficient using UML (sequence, state, collaboration, class, use-case diagrams).
• Knowledge of design patterns MVC, Strategy, Factory, Singleton and general design considerations.
• Familiarity with Microsoft PlayReady
• Knowledge of performance improvement techniques as applicable to mobile devices
Soft Skills:
• Easy-going and flexible individual who can integrate and function within a pre-existing team
• Self-starter can operate with minimal direction
• Excellent oral and written communication skills capable of leading design/architecture & training sessions.
• A creative thinker and experienced problem solver.
• Proven multi-tasker
Responsibilities:
• Provide guidance on implementation and design best practices to other developers
• Produce design artifacts such as class diagrams and sequence diagrams for Android lib features or client solutions.
• Implement product features within a team using best practices to meet product deliverables
• Refactor code to increase operating efficiency and extensibility and/or adapt programs to new requirements.
• Implements reusable unit tests to ensure the integrity of on-going product quality.
• Participate in Agile sprint planning sessions and provide constructive feedback
• Help the Product Management team with high-level estimation and clarification of technical implementation of features.
• Prepare software packages for deployment that adhere to the defined standard deployment policies.
• Generate product documentation for releases
• Mentor Junior developers throughout the development lifecycle
QualificationsQualifications
Education: Post-secondary degree in Computer Science, Software Engineering or equivalent academic experience required.
Additional InformationAll your information will be kept confidential according to EEO guidelines.

