Category : Engineering - Software
We are currently looking for Senior Android Software Developer who will collaborate and develop amazing new apps and SDKs, contribute ideas and help shape both technical and functional requirements, and have an active voice in architecture, integration, and delivering innovative solutions.
This is a key role in the company. Communication skills, leadership, and collaboration are critical aspects.
Produce elegant, well-designed native mobile apps for Android devices (experience with iOS is also welcome bonus!).
Lead the design process and mentor developers by sharing best practices, mobile design philosophies and new tools and techniques.
Analyze requirements, wireframes and capabilities of related systems to propose appropriate solutions.
Work with our Test & Automation team and deliver excellent test coverage to support continuous integration / delivery.
Participate in our agile / scrum discipline, smoothly interacting with QA, DevOps and Product Management.
Research and share industry innovations and trends.
Work in teams with shared codebases.
Refactor and optimize code for performance and scalability.
Collaborate with other teams to deliver cross discipline solutions.
Inspire your teammates with bold ideas and a can-do attitude.
Open to international travel.
4+ years of professional Android development experience.
Fluent in Java and C++ programming. Have sound object-oriented design skills.
Hands-on expertise on Linux kernel.
Experience with distributed source control (Git).
Ability to design and develop using core Android frameworks APIs and SDKs / NDKs.
Expertise in App Components, UI frameworks, developer tools (Android Studio), workflows (debugging, profiling, unit testing, continuous integration, provisioning, distributing and submission to the Google Play Store).
Must have Widget development, TDD, J-Unit test framework experience; SIP an asset.
Experience with commonly used 3rd party libraries and services.
Experience with developing applications for varying screen size and orientations.
Experience with Android internal services and frameworks.
Experience in developing complex applications / solutions.
Intimately familiar with Android design patterns and coding conventions as well as Google's Design Guidelines and Google Play Developer Program Policies
Development experience with other mobile platforms (e.g. iOS), a plus.
Excellent knowledge of fundamentals of computer science is mandatory Operating Systems, data structures, algorithms, IP networking.
Ability to work in a fast-paced environment where continuous innovation is desired.
Bachelor’s or Advanced Degree in Computer Science, Engineering or Mathematics.