Luxoft, a DXC Technology Company, (NYSE: DXC), is a digital strategy and software engineering firm providing bespoke technology solutions that drive business change for customers the world over. Luxoft uses technology to enable business transformation, enhance customer experiences, and boost operational efficiency through its strategy, consulting, and engineering services. Luxoft combines a unique blend of engineering excellence and deep industry expertise, specializing in automotive, financial services, travel and hospitality, healthcare, life sciences, media and telecommunications. Luxoft is well known for its consistent high level of delivery and complex project management, its premier digital engineering talent, exceptional client focus, and agility, creativity, and remarkable problem-solving capabilities.
- Minimum 5 years experience hands on on Android development
- Able in designing systems that span multiple technologies/platforms.
- Good In Data Structures - Should be able to suggest which collection to be used based on the requirements. Knows how to use SDK collection facilities (Enumeration, Filtering, Mapping, Reducing, Sorting)
- Advanced knowledge in threading (thread types with Runnable / AsynkTask; thread pool executor; Interrupting safe conditions; Snchronization)
- Knows what Generics are. Understands how and when they can are used. Use generics for reducing the amount of written code and achieve better modularization. Understanding of Reflexion concept.
- Increase Runtime Safety by using generics.
- Knowledge of REST, networking and caching; must be able to know which frameworks can be used at client side. Keep updated with new networking standards (HTTP2). Capable in mocking web interfaces.
- Knowing about security mechanisms (SSL pinning, Data Integrity, HMAC, man in the middle etc). Proficient with KeyStores/Keychains. Knowledge about encryption.
- Base Code obfuscation; Able to treat obfuscation exeptions
- Use caching mechanisms. Able to handle platform limitations.
- Good knowledge working with persistency layers and corresponding persistency frameworks + tools. Shared Preferences, writing to files, assets , SQLite; Serializable/Parcelable, ContentProvider
- Knowledge of design patterns: Adapter, Singleton, Facade, Factory, Observer, Builder, Decorator, MVP, Reactive (represents a plus), Repository, Interactor/Executor
- Ability to build apps with a clean architecture: Knowledge about SOLID Principles.
- Read and write basic shell scripts.
- Very Good knowledge of native SDK: Proficient with Android Studio, Monitoring Tools, Multiple Process Debugging, Backward compatibility, Compiler
- Knows how to write unit tests and UI tests for the corresponding platform. Knows/Experienced with TDD.
- Ability to work with a continuous deployment environment. Takes advantage of continuous deployment in his/her daily work.
- Keep up to date with latest language features. Very good knowledge of Java for Android.
- Upper intermediate EN skills
- The Mobile Developer - designs and develops based on REST APIs, customer-oriented mobile apps for the Bank in an Agile environment.
- Plan and provide appropriate software and documentation
- Coaching / Guiding less experienced developers
- Exposure to technical design and development of customer-oriented mobile application systems on various platforms
- Experience with 4.5-Star Apps with fast-paced release cycles
- Driver of quality indicators, promote the integration of non-functional testing (security, performance, UX) into continuous integration cycle
- Create integration environment, testing and deployment strategies for the Mobile Development Team
- Agile working environment: Work with the Product Owner, Scrum Masters, Dev Team members, UX designers, security specialists and other groups to identify technical and functional needs
- Be able to work in a global environment with mixed teams and mixed cultures at different time zones
- Experience with best industry standards - applying coding guidelines
Reasons to join us
• Attractive salary and benefits package
• We invest into your professional training including business domain knowledge, and allow you to grow your professional career.
• We encourage creative-thinking into an open-minded work environment. Frequently the relaxation rooms are the place where the most ambitions ideas are born.
• We are not just professional teams, we are also friends that have fun working together
If you are an active person and you feel motivated by the creation/development of the software solutions, then this is the place to be, you will not get bored.