development
Clean and Organized development style
Develop testable and maintainable code, that is easy to understand for other developers. I make a point of avoiding code duplication at all cost, as I belie that to be the source of most technical debt that keeps development slow and fragile.
Manage scope
Develop tight, reusable, testable, encapsulated units of code. My measure for quality is not the number of lines I write or even test coverage. It's how easy it is to understand, and how much a new feature can be added without modifying the least amount of existing code.
Refactor
I dont prefer large refactorings as they tend to cause unforeseen negative side-effects. I like to do small refactrorings as I go, taking time fro all development cycles to clean up the code I wrote and the area where I worked, so I always leave the codebase cleaner, than I started with.
Architecture
The ability to create frontend software architecture that scales well. I value the ability to make changes as the project grows and prefer not to set things in stone that make it impossible to change. Also, not create processes that cause bottlenecks to maintain. For example, for a small team it might make more sense to create a (still modular) monolith, than to create a full-on microservices that takes a lot of dev-hours to maintain
Agile
Working in an agile environment, with fast adaptation to new requirements and change in priorities.
CI-CD
Configure and maintain complex CI-CD pipelines for to achieve supervised and automated test, build and deploy processes.
Best practices
Having the ability to recognize and apply different kind of software best practises, such as DRY, KISS, YAGNI, SOLID., Open to pai programing constructive code reviews
testing
Appreciate the importance of a well tested application. Write automated tests and enforce their success using dedicated CI pipelines.
ux design
Research, Interpret and Define
Ability to conduct research to explore user needs and business requirements using a wide variety of methods. Interpret findings and draw conclusions. Identify design challenges and principles.
Create Concepts
Create concepts that respond to design challenges, and provide value both the client and the user. Use user-centered design methods and creativity to come up with now, original ideas.
Visualize and Prototype
Ability to effectively generate and communicate ideas visually. Create high fidelity prototypes that showcase appearance, functionality, behaviour and user interaction.
Evaluate and Validate
Test, evaluate and validate features and designs to geain insight into user interaction and experiences abd the way needs are fulfilled and goals are achieved.
Plan and collaborate
Plan individual and team work, collaborate in teams. Understand and fulfil my own role within a team or project and proactively initiate new discussions. Not afraid of confrontation while maintaining respect for fellow colleagues.
Reflect
Ability to reflect and critically evaluate my own work, recognise and learn from mistakes.