Identifying requirements for micro frontends: Collaborate with business stakeholders to determine the necessary functional and nonfunctional requirements for each micro frontend component and required services.
Documenting requirements for micro frontends: Create detailed documentation for each identified micro frontend including functional descriptions expected behaviours and dependencies.
Designing micro frontend solutions: Assist the architecture team in designing the architecture of the micro frontends including integration with backend services (microservices architecture) APIs (SAO architecture) and databases.
Creation and maintenance of documentation: Ensure that documentation is created for every micro frontend including design API specifications deployment guidelines and scalability considerations. This documentation will be updated throughout the project lifecycle.
Identifying risks and issues: Proactively identify potential risks related to micro frontend solutions integration performance scalability and security document them and work on mitigation strategies.
Creating a list of micro frontends: Define which parts of the monolithic frontend should be converted into independent micro frontends.
Breaking down development tasks: Prioritize and allocate development tasks for the creation of micro frontends ensuring they align with business needs.
Identifying shared data: Ensure that the frontend is designed to work with shared data while maintaining separation between microservices.
Creating documentation: Prepare or support the preparation of HLA HLD and development of LLD Documentation or equivalent Agile documentation (e.g. user stories) following clients templates.
Analyzing current performance: Use performance measurement tools to assess the performance of the current monolithic application.
Identifying optimization opportunities: Examine the codebase network requests and server usage to identify bottlenecks. Collaborate with backend teams to address potential serverside performance issues.
Implementing optimizations: Apply solutions such as lazy loading caching code splitting and other techniques to improve performance.
Testing performance: Conduct pre and postoptimization tests to measure improvements.
Ensuring security: Implement security best practices to mitigate performance risks related to security issues such as preventing denial of service (DoS) attacks ensuring secure APIs and following OWASP TOP 10 standards for secure coding.
Creating technical documentation: Provide clear and comprehensive documentation on the architecture setup and usage of micro frontends.
Conducting code reviews: Ensure that the development team follows coding standards best practices and performs adequate testing.
Continuous feedback: Provide ongoing feedback during code reviews and ensure continuous improvement in the code quality.
Maintaining documentation: Ensure that documentation is maintained throughout the project lifecycle.
Supporting requirement analysis: Assist the business and architecture teams in analyzing frontend requirements from a technical perspective.
Providing UI/UX guidance: Offer suggestions and feedback on UI/UX design and usabilitybased on the technical implementation.
Ensuring alignment between frontend solutions and business requirements: Support the architecture and development teams to ensure the frontend solutions meet business objectives while maintaining adherence to technical standards and design patterns.
Assisting in identifying technical challenges: Work with the development team to identify and address any technical challenges that arise during the integration of UI components into the frontend.
Documentation of business requirements: Ensure that the business needs are fully understood and translated into functional UI/UX requirements.
Coordinating with backend developers: Work closely with backend developers to define API endpoints and shared data structures.
Ensuring frontend functionality: Ensure that the frontend receives the necessary data and functionality from backend services displaying it correctly to the endusers.
Aligning on response format and structure: Align with backend teams on the format and structure of service responses to ensure consistency across both frontend and backend.
Collaborating on integration points: Collaborate with backend teams on integration points to ensure smooth and efficient data exchange between frontend and backend.
Conducting joint testing sessions: Participate in joint testing sessions to validate frontend backend integration and address any issues.
Qualifications :
Bachelors degree plus at least 5 years of professional experience in software development.
Minimum 5 years of experience including the responsibility to build complex SPAs for large organizations.
Deep knowledge of building Web components (HTML5/generic APIs) based applications.
Practical knowledge of micro frontend architecture and SPA.
Deep knowledge of JavaScript including frameworks such as React/Angular
Knowledge of working with GraphQL WebSockets and TypeScript Experience with lazy loading and RWD.
Knowledge of Git Workflows.
Experience in building offline (mobile) applications with local base synchronization and conflict resolution support.
Experience as a Senior Lead Developer or equivalent.
Knowledge of immutable state management (e.g. Redux library)
Knowledge (preferred experience) in migrating from monoliths to micro frontend architectures (horizontal & vertical patterns)
Practical knowledge of working in a CI / CD environment based on Azure DevOps.
Knowledge of Domain Driven Design.
Ability to create automated unit and integration tests.
Experience in building observability features for micro frontends.
Secure code development aligned with secure code development best practices e.g. OWASP TOP 10.
Works independently and guides junior staff
Writes specifications concept documents end user and technical documentation;
communicates effectively with stakeholders regarding technical and user requirements topics
Welldeveloped interpersonal skills.
Ability to work in a team demonstrating strong communication skills and a willingness to share knowledge.
Previous experience working in an Agile team (SCRUM).
SOLID understanding of best practices processes and patterns in software development
Designing and implementing solutions based on micro frontend architecture
Creating technical documentation and conducting code reviews.
Working with backend and frontend teams to deliver consistent solutions.
Optimizing applications for performance and scalability.
Disclaimer: Drjobpro.com is only a platform that connects job seekers and employers. Applicants are advised to conduct their own independent research into the credentials of the prospective employer.We always make certain that our clients do not endorse any request for money payments, thus we advise against sharing any personal or bank-related information with any third party. If you suspect fraud or malpractice, please contact us via contact us page.