Job Description
As a Senior Software Engineer - Android in the CX & Sales organization you will be in the center of the action where both design and product meet business. You will be working closely with Product Managers, Engineering Managers, all product teams, android community. You should have a strong technical background, a passion for developing generic and customized UI components, android mobile application development, and a drive to deliver bug-free developer and user experiences as per the business requirement without compromising on the industry best coding practices. We are looking for highly skilled and experienced for the role of Senior Software Engineer - Android to lead the development team of our Design Team for Android applications. As an Android Developer, you will be responsible for designing and delivering robust and scalable Design System Library solution. You will also provide technical leadership, mentorship, and guidance to junior members in the android community.
Team Description
Design System team is the heart of our UI components for mobile apps. We have abstracted our UI layer mainly to reuse our components across all teams. We are looking for a dynamic android developer with experience in the Design System, UI components to join this team, who can drive initiatives, has product thinking, seeing opportunities and improve further.
Responsibilities
Lead the end-to-end development of complex Android UI and features, from concept to development.Drive technical decision-making, provide architectural guidance, and ensure the implementation of best practices.Collaborate closely with android community, cross-functional teams, including product managers, designers, and backend developers, to define design system requirements and translate them into technical specifications.Develop scalable and maintainable design system libraries and android applications, ensuring adherence to coding best practices, design patterns, and architectural guidelines.Provide technical guidance and mentor junior Android developers, reviewing their PRs and providing constructive feedback.Perform thorough code reviews to ensure code quality, performance, and adherence to established coding standards.Ensure the performance, quality, and responsiveness of UI components and android applications through thorough testing, debugging, and optimization. Troubleshoot and resolve complex technical issues and performance bottlenecks.Collaborate with other teams to understand and guide developers.Define test plans and ensure comprehensive test coverage.Drive innovation by researching and implementing cutting-edge technologies and techniques to enhance the UI and Android app development process.Stay up to date with the latest trends and advancements in Android development, evaluate new tools and frameworks, and promote their adoption when appropriate. Also, share knowledge and best practices with the android community.Participate in architectural discussions, providing insights and proposing solutions to enhance system architecture and overall product quality.Contribute to the continuous improvement of development processes and workflows.Participate in Agile/Scrum development processes, contribute to sprint planning, and provide accurate estimations for project timelines.
QualificationsExperience: 6 to 9 years of android app development, with advanced exposure based on Kotlin, Jetpack Compose, Kotlin Flows, Dependency Injection.Design System Library: Experience of developing and maintaining android design system libraries, to be used by all product teams.Jetpack Compose: Experience of developing generic, customized complex UI components on Jetpack Compose, and maintaining.Android APIs: In-depth knowledge of the android SDK, including various frameworks, APIs and libraries. Strong familiarity with UI Components, Data Storage, Animation is important, as well as understanding of accessing device capabilities, and integrating with system services effectively. Ability in mentoring junior developers on android related queries.Expertise in Kotlin: Extensive experience and deep understanding of Kotlin, including its core concepts, syntax, and OOP. As a developer, you should be able to leverage Kotlin’s advanced features, handle complex requirements, and provide guidance to junior developers. Senior developers should be able to write clean, efficient, and maintainable code, and provide mentorship to junior developers on Kotlin related topics.Architecture and Design Patterns: Good understanding of responsibilities and separation of concerns in each layer along with fundamentals and, implementing the architectural pattern is valuable when working with Android. Proficiency in software architecture and design patterns, such as MVVM and Clean Architecture are crucial. Senior developers should be able to make informed decisions on architectural choices, design scalable and modular solutions, and ensure code quality and maintainability.Advanced User Interface Design: Expertise in user interface design principles and a keen eye for detail. Senior developers should be able to collaborate closely with designers, provide valuable feedback, and ensure the implementation of pixelperfect and intuitive user interfaces. Translating visual designs into interactive and engaging user interfaces is the key to develop intuitive android applications.Networking and API Integration: Expert in integrating android applications with async RESTful APIs, handling interceptors, and architecture to handle both local and remote data sources. Experience with making network requests, parsing JSON responses, handling authentication, have a deep understanding of networking concepts & practices, and managing data models is necessary for building applications that communicate with web services.App data and Storage: Familiarity with Preferences, Data Store, ROOM. Being able to work with local data storage and implementing efficient data models is important for creating data-driven applications.Debugging and Performance Optimization: Strong debugging skills are crucial for identifying and fixing issues that may arise during the development process. Proficiency in performance optimization techniques, such as minimizing memory usage and optimizing code execution, to ensure smooth and efficient application performance. Ability to optimize application performance by identifying and addressing bottlenecks, reducing memory footprint, and improving UI rendering efficiency.Debugging and Troubleshooting: Strong debugging skills to identify and resolve complex issues. Proficiency in using debugging tools, ability to analyze crash logs and system logs are important for troubleshooting and resolving critical issues.Team Leadership and Mentorship: Strong leadership skills to guide and mentor junior developers, provide technical direction, and foster a collaborative and productive team environment. Senior developers should be able to facilitate knowledge sharing, conduct code reviews, and provide constructive feedback.Communication and Collaboration: Excellent communication skills, both written and verbal, to effectively communicate ideas, technical concepts, and project requirements. The ability to collaborate with cross-functional teams, including designers, product managers, and backend developers, is crucial for successful delivery of high-quality applications.Continuous Learning: A passion for learning and staying up to date with the latest, stable advancements in android app development. You should actively seek out new technologies, trends, and best practices, and be adaptable to evolving project requirements and technologies.
Additional Information
This is a full-time position, starting in February 2025.
Apply by sending in your CV in English as soon as possible, but no later than the 10th of January 2025. Due to data policies, we only accept applications through the SmartRecruiters or career page.
Benefits
We offer all our employees at H&M Group attractive benefits with extensive development opportunities around the globe. All our employees receive a staff discount card, usable on all our H&M Group brands in stores and online. Brands covered by the discount are H&M (Beauty and Move included), COS, Weekday, Monki, H&M HOME, & Other Stories, ARKET, Afound. In addition to our staff discount, all our employees are included in our H&M Incentive Program – HIP. You can read more about our H&M Incentive Program here.
In addition to our global benefits, all our local markets offer different competitive perks and benefits. Please note that they may differ between employment types and countries.
Inclusion & Diversity
At H&M Group, we’re determined to create and maintain inclusive, diverse, and equitable workplaces throughout our organization. Our teams should consist of a variety of people who share and combine their knowledge, experience, and ideas. Having a diverse workforce leads to a positive impact on how we address challenges, on what we perceive possible, and on how we choose to relate to our colleagues and customers all over the world. Hence all diversity dimensions are taken into consideration in our recruitment process.
We strive to have a fair and equal process and therefore kindly ask you not to attach a cover letter to your application as it often contains information that can easily trigger unintentional biases.
Company Description
H&M Group is a family of brands; H&M, COS, Weekday, Monki, H&M HOME, & Other Stories, ARKET, and Afound. At H&M Group, our people are the driving force behind our commitment to creating meaningful growth and more sustainable lifestyles. Help us re-imagine fashion and together we will re-shape our industry. Learn more about H&M Group here.