Executes software solutions, design, development, and technical troubleshooting with ability to think beyond routine or conventional approaches to build solutions or break down technical problems
Creates secure and high-quality production code and maintains algorithms that run synchronously with appropriate systems
Produces architecture and design artifacts for complex applications while being accountable for ensuring design constraints are met by software code development
Gathers, analyzes, synthesizes, and develops visualizations and reporting from large, diverse data sets in service of continuous improvement of software applications and systems
Proactively identifies hidden problems and patterns in data and uses these insights to drive improvements to coding hygiene and system architecture
Contributes to software engineering communities of practice and events that explore new and emerging technologies
Executes standard software solutions, design, development, and technical troubleshooting
Writes secure and high-quality code using Java, MVVM, Dagger, RxJava, and Kotlin
Designs, develops, codes, and troubleshoots with consideration of upstream and downstream systems and technical implications
Learns and applies system processes, methodologies, and skills for the development of secure, stable code and systems
Adds to team culture of diversity, equity, inclusion, and respect
Required qualifications, capabilities, and skills
Formal training or certification on software engineering concepts and 3+ years applied experience
Hands-on practical experience in system design, application development, testing, and operational stability
Proficient in coding in one or more languages (Kotlin, Java)
Experience in developing, debugging, and maintaining code in a large corporate environment with one or more modern programming languages and database querying languages
Overall knowledge of the Software Development Life Cycle
Solid understanding of agile methodologies such as CI/CD, Applicant Resiliency, and Security
Experience working with Restful API integration
Experience working with RxJava, LiveData, or State flows
Experience in Unit testing libraries like Mockito, JUnit, Gherkin scripts for UI Test Automation.
Strong understanding of java and android ecosystem and
all mobile UI fundamentals, from layout to animations
Understanding of SOLID principles and architectural patterns such as MVP, MVI and MVVM
Experience with data injection tools, such as Dagger, Hilt, Koin, etc
Preferred qualifications, capabilities, and skills
Familiarity with Agile development including daily scrum and weekly iteration reviews and planning
Experience with Unit Testing frameworks
Experience with Android jetpack, Kotlin Coroutines