Position: Senior Android Developer
Company: Levi9
Experience required: 5y
Category: Android
English level: upper
Published: 2020-11-01T00:00:00+02:00

**Qualifications:**
— 5-8 years of experience in a similar role
— Bachelor in Information Technology, Computer Sciences or similar
— English language, written and spoken

**Functional/technical skills:**
• Android/iOS:
o Is the go-to person when it comes to Kotlin/Swift
o Solid knowledge of the other platform
o Can set up the correct configurations for projects and advice team members how to start with Backbase products
o Knows what is happening with the technology and makes sure that projects are ready for changes that happen in Android/iOS
o Makes sure everybody is aware of these changes by doing knowledge transfers
o A clear understanding of the common design-patterns and knows the pros & cons of each one of them.
o A clear understanding of SOLID principles

• Rest:
o Is involved when services are created for new functionality
o Helps define the specifications and makes sure that everything that is needed for the mobile to work is returned in the service
o Uses the specification as a contract between Mobile and BE which helps parallel implementation of new services

• CI/CD:
o Able to set up pipelines for a new project from scratch
o Teaches others how to use it
o Frequently improving the pipeline setup

• Software testing:
o When new projects start, can easily setup the testing environments and make sure everybody can contribute to the tests
o Is familiar with all different ways of testing and makes sure that software we create and make publicly available is tested to the bone
o Advocates testing

• Security Considerations:
o Defines the best way to secure the project or product feature
o Knows exactly what kind of solutions our product offers like: SSL pinning, Jailbreak/root detection, security violation
o Actively mentors more junior colleagues on these topics

• Version Control Systems:
o Knows exactly how to create branching strategies and set it up for projects
o New hires are up to speed way quicker because they are using their setup

• Code refactoring:
o Is familiar with all the code in the project, therefore knows which parts need some extra attention to follow the overall architecture
o Knows when to plan for refactor sessions and understands the overall technical debt of the project
o Mentors people in what to look for and how to use our tools for static code analyses and how to check code quality

• SDLC:
o Understands what needs to be done in the phases of the SDLC and helps fulfill those phases like: Planning, Requirements, Design and Prototyping, Software development, Testing, Deployment and Maintenance
o Uses the SDLC tools provided by Backbase to do it like: Confluence, Jira, Stash and autoconfig

• Business requirements:
o Gives input on the business requirements and can easily assess the effort of implementing them

• Non functional requirements:
o Helps set up the NFR’s for a project or product features
o Knows which ones already exist and how they influence each other
o Reminds the team during refinement sessions about the NFR’s and makes sure they are taken into consideration when estimations are being made

• Estimations:
o Can make an estimate for a couple of stories for the whole team to complete an implementation of a new feature

• Documentation:
o Actively improves our documentation and knows how to write something that is easy to use

• Agile development / Scrum:
o Is able to take over when the scrum master is not there
o Knows exactly what needs to happen and can perform all the ceremonies themselves
o Advocates Scrum and knows how to get people to adopt it

• Product Development (R&D specific):
o Able to interact with the customers and support them with the issues they have on the capabilities team owns
o Able to provide workarounds and give clear feedback to the team how the product should be improved
o Exposed to all capabilities of the Backbase Platform

• Product Implementation (CS specific):
o Able to interact with the customers and support them with the issues they have on project related topic
o Able to provide workarounds and give clear feedback to the team how the product should be improved
o Capable of providing guidance to other engineers within an internal as well as embedded team

• Technical Skills:
o Knows how to follow up the question with the right action
o Writes easier code.
o Knows what questions to ask and how to follow up on those questions is essential
o Able to experiment and test solutions for problems, validate assumptions for them, and the ability to associate one idea to another to reach a solution
o Has the trait to consistently improve the quality and structure of the previously written code
o Mentors the junior and mid-level developers of the team, and can designate tasks to team members in a balanced and effective manner
o Comprehends the full scope of a project and make the best suggestions and methods to develop, test, implement, and maintain a project
o Coaches junior developers and can manage a team doing simple to complicated tasks
o Performs regular reviews on codes done by less experienced developers and offer feedback and suggestions for those codes
o Independently solves various problems and rectify complicated problems through the application of design patterns
o Creates and writes complicated tests

• Work Experience:
o Has 5 years of experience including extensive experience in solving problems of varying complexities.

**About the project**:
As a Senior Mobile Engineer, your tailor-made code seamlessly integrates our products with customers’ systems. You build apps mainly using native technology but also work on hybrid mobile apps. As a senior mobile expert technician, it is your responsibility to proactively take the lead in a project and propose and implement improvements. You create roadmaps for new product development, generate a feedback loop from the customers to our R&D department and start initiatives to improve our product and ways of working. On a day-to-day basis, you actively contribute to architectural decisions by proposing ideas, review and comment on pull requests, contribute to documentation, proactively apply and improve our git (work)flow and use our CI/CD systems. As part of your role, you are also responsible for contributing to the Mobile guild, onboarding of new hires and technical assignments review of recruitment candidates.