Senior Mobile Developer – Team lead

Senior Mobile Developer

Responsibilities:
As a Senior Mobile Developer, you will play a leading role in all aspects of our iOS and Android stack with a special focus on creating rich, modern, and world class user experience.

The successful candidate should be comfortable with various mobile platforms, hybrid, and native technologies.

This person will help manage the mobile development team and be accountable for project deliverables and timeline. He/she will be primarily responsible for the design, development, testing, and deployment of apps.

They should be familiar with Agile methodology and Scrum to manage the software projects.

Effectively work and collaborate with the design team and front-end developers to deliver a compelling friendly user experience.

Be able to participate in the research & planning of new mobile apps or prototypes.

Help to improve the quality and robustness of apps by performing code reviews, leveraging automated test tools to implement/execute test plans, and continually iterate.

Keep up-to-date with latest industry trends in mobile technologies and understand how we can exploit them in our apps.
Requirements:
– 4+ yrs experience of iOS application development or 4+ years of android application development.
– Strong development skills in Swift or Objective C for iOS. Swift is preferred.
– Strong development skills in JAVA for Android.
– Extensive working knowledge of the SDKs (Xcode, Cocoa, Android Studio) and related APIs.
– Good knowledge and understanding of Object Oriented concepts and mobile architecture.
– Proficient in understanding the design patterns for both iOS and Android.
– Experience with fragmentation challenges from working with multiple Android versions running on different devices. Those challenges include developing to different screen sizes, different DPIs and different aspect ratios.
– Developed using such optimization techniques such as thread pools and caching.
– Familiar with encryption utilizing cryptographic keys (both asymmetric and symmetric). Possess good understanding of encryption algorithms such as RSA, AES, and ECC.
– Good working knowledge of version control systems such as Git/SVN along with clients such as BitBucket or equivalent. Good understanding of how to build feature and release branches.
– Proven experience in a technical leadership role, and working in Scrum and / or Kanban with Agile teams.
– Working experience to translate functional requirements into technical specifications.
– Experience in conducting code reviews to ensure consistent quality, robustness, and conformance to standards and best practices.
– Experience with writing automated unit tests.
– Motivated and passionate about what you do, and possess the keen ability to motivate others in the process.
– Value team work and encourage collaboration.
– Good verbal and written communication skills.
Education:
– BS Degree in Computer Science Degree or related field.