Make Stanislav Lashmanov a Frontend Maintainer
Manager Justification
It's hard to specify hard requirements for becoming a maintainer, which is why the documentation consists of flexible guidelines. Reviewers are encouraged to think of their eligibility for maintainership in the terms of "I could be ready at any time to be a maintainer as long as it is justified".
-
The MRs reviewed by the candidate consistently make it through maintainer review without significant additionally required changes. -
The MRs authored by the candidate consistently make it through reviewer and maintainer review without significant required changes.
Stanislav has been a frontend engineer at Gitlab for two years and has worked with groupcode review and groupeditor extensions. In that time he has:
- Reviewed more than 500 merge requests
- Authored more than 200 merge requests
- Been training to become a maintainer under @markrian's mentorship
Values demonstrated during reviews
Attention to detail through local validation
- identified layout shift, old CSS tricks and magic numbers in the code; suggested a patch with the fixes
- tested feature locally, pointed out the visual bug
- suggested using standard data flow instead of provide\inject; example of 'disagree, commit and disagree'
Strive for code quality
Architecture
- pointed out architectural mistakes, proposed a change with a patch
- suggested change for backend to simplify code on the frontend
- suggested using a pure CSS solution instead of JavaScript one
Code design
- suggested using existing code
- suggested alternative implementation using existing code
- challenged the implementation and found potential bug
- suggested avoiding code duplication and providing better indication of code dependencies
- suggested alternative code design which uses existing data flows, significantly simplified the code
- suggested small refactoring for better code responsibility separation
- suggested a simplification to the code
- suggested code simplification
- suggested code simplification
- suggested refactoring component's interface for clearer data flow
- suggested correct HTML structure
- suggested code simplification
- asked for clarifications for an uncommon pattern in code
- suggested a fix for common misuse of the debounced call uses in components
Maintainability
- asked for clarifications for the feature removal
- found potential typo, it was intentional, suggested to make a comment to avoid confusion in the future
- found a very complex function, suggested simplification with code example
- suggested better naming for a function to avoid confusion
- suggested changing component interface for better clarity
- suggested refactoring for better code clarity
- asked for clarifications on ambiguous code
Redundancy
- found unnecessary component
- challenged the need for a component, suggested a refactoring
- challenged the need for a change in code, asked for clarifications
- suggested removing redundant code
- asked for reasoning behind the changed code
- suggested removing redundant code
- suggested removing unnecessary code
- asked for clarification for potentially unused code
- pointed out potentially unwanted change
- identified redundant code
- identified redundant code pattern
Bugs
- found a potential bug in code, explained and suggested a fix
- found a bug in HTML markup, suggested a fix
- suggested a CSS fix to avoid potential bugs
- suggested a fix to a localization bug
Code smells
- suggested removing outdated code
- found a confusing pattern in code, suggested a refactoring
- found a code smell, suggested this to be fixed in a follow-up because of complexity
Security
Developer experience
- suggested alternative CSS implementation for better developer experience
- suggested better component naming
- suggested a redesign to the code for better developer experience and clarity
- suggested adding a name to component for better developer experience
Improving tests
- suggested an improvement to the tests
- suggested avoiding snapshot tests, improving code responsibility separation; an example of 'disagree, commit and disagree' principle
- suggested a fix to improve tests robustness
- suggested using better checks in tests for an improved tests maintenance and robustness
- suggested an improvement to tests clarity
- suggested an improvement to test's code quality
Results for customers
Kindness
Before Merging (Manager Tasks)
-
Close any relevant trainee maintainer issues with a comment indicating that this merge request is being created, as (they are no longer required to become a maintainer). -
Mention the maintainers from the given specialty and ask them to provide feedback to the manager directly. -
Leave this merge request open for 1 week, to give the maintainers time to provide feedback. -
Ensure we have at least 2 approvals from existing maintainers.
Once This MR is Merged
-
Create an access request for maintainer access to gitlab-org/<project>
. -
Join the [at]frontend-maintainers
slack group -
Ask the maintainers in your group to invite you to any maintainer-specific meeting if one exists. -
Let a maintainer add you to gitlab-org/maintainers/frontend
withOwner
access level. -
Announce it everywhere -
Keep reviewing, start merging 🤘 😎 🤘
Edited by Stanislav Lashmanov