Description
Cairo
- 4 years Experience
- Digital Solutions Department
About the job:
Requirements and responsibilities
Job duties:
- Code Reviews and Quality Assurance: Conducting thorough code reviews to ensure high code quality, adherence to coding standards, and best practices across the project.
- Performance Optimization and Scalability: Identifying potential performance bottlenecks and implementing optimizations to enhance the app's performance, scalability, and responsiveness.
- Complex Feature Development: Tackling complex feature implementations and collaborating with the team to ensure timely and successful delivery.
- Continuous Integration and Deployment: Implementing and maintaining robust CI/CD pipelines to automate testing, builds, and deployments.
- Code Refactoring and Technical Debt: Identifying areas for code improvement, refactoring legacy code, and reducing technical debt.
- Problem Solving and Troubleshooting: Offering expert-level troubleshooting skills to address complex issues and challenges during the development process.
- Innovation and Research: Staying at the forefront of Flutter and mobile development technologies, researching new tools, libraries, and best practices to improve the team's productivity and project outcomes.
- Collaboration with Other Teams: Collaborating with cross-functional teams, including designers, product managers, and backend developers, to achieve project goals effectively.
- Project Planning and Estimation: Assisting in project planning, defining technical requirements, and providing accurate effort estimates for tasks.
- Training and Workshops: Organizing and conducting technical training sessions, workshops, or knowledge-sharing sessions to uplift the skills of the development team.
- Contributing to the Flutter Community: Actively participating in the Flutter community, contributing to open-source projects, and sharing knowledge to advance the Flutter ecosystem.
- Technical Leadership: Providing technical leadership and guidance to the development team. Mentoring and coaching junior and mid-level developers to help them grow their skills and expertise.
Technical Requirements:
- Bachelor's degree in Computer Science, Information Technology, or a related field, or equivalent work experience.
- 4+ years of experience.
- Performance Profiling and Optimization: Proficiency in using profiling tools like Flutter Observatory and Dart DevTools to analyze app performance and optimize rendering, memory usage, and app startup times.
- Advanced UI/UX Design: Ability to implement custom animations, transitions, and complex UI interactions to create rich and delightful user experiences.
- Custom Platform Channels: Experience with platform channels to enable communication between Flutter and native code for integrating platform-specific functionalities or accessing native APIs.
- Offline Data Handling: Expertise in managing offline data storage and synchronization, including data persistence with SQLite and managing local data conflicts.
- Advanced Testing and Automation: Knowledge of advanced testing techniques, including widget testing, integration testing, and automating test cases with frameworks like flutterdriver or fluttertest.
- Continuous Integration and Deployment (CI/CD): Experience in setting up and managing robust CI/CD pipelines for automated testing, code signing, and app distribution.
- Code Review and Collaboration: Strong experience in leading code reviews, providing constructive feedback, and collaborating with team members to improve code quality and development processes.
- Advanced Package Development: Familiarity with creating and publishing custom packages to the Flutter community, contributing to open-source projects, and maintaining high-quality codebases.
- Background Processing and Isolates: Proficiency in implementing background tasks with isolates, handling periodic tasks, and efficiently managing resources during background execution.
- Advanced Integration with Backend Services: Experience in integrating with complex backend services, handling authentication, and working with APIs efficiently.
- Accessibility: Knowledge of implementing accessibility features to make Flutter apps more inclusive and accessible to users with disabilities.
- Cross-Platform Development: Expertise in targeting multiple platforms, including web and desktop, using Flutter.
- Code Refactoring and Codebase Maintenance: Ability to refactor and optimize existing codebases, reduce technical debt, and improve code modularity and maintainability.
- Security and Data Protection: In-depth understanding of secure coding practices and implementing security measures to protect user data and prevent common vulnerabilities.
- Advanced Error Handling and Logging: Proficiency in robust error handling, logging, and crash reporting mechanisms to provide meaningful feedback for debugging and issue resolution.
- Performance Reviews and Team Leadership: Experience in