Position: .NET Developer
Category: .NET
English level: intermediate
Years of experience: 1

When I got the verification tool, the backend solution contained a single project consisting of controllers, services, domain, and DTO files.
Dapper served as the ORM. There were no repositories, just services (that call from the controller) that make a direct dapper call, so any domain object changes were painful to make.
Regular activities (jobs) that were performed on this app were made through SQL jobs or as tasks in Task Scheduler.
There was no exception tracking.
Users had either full access to some context or no access at all, with no other access permissions. What was done since May in
Backend:
1. App functionality was segregated into 3 parts: Application; Authorization (responsible for
access management and access check); Configuration (keeping track of exceptions and sending
emails to the recipients)
2.Clean architecture to build clear dependencies 
3.EFCore 7 was added (using Fluent API and IEntityTypeConfiguration). Added repositories and
UnitOfWorks
4. CQRS
5. Created an audit to track changes for domain objects.
6. Access. Added roles with operations. This helps create custom roles without any deployment 
7.Hangfire for regular jobs
8. Added new domain objects that help speed up the application
9. Moved validation from frontend to the backend (FluentValidation)
10. Added unit tests
SQL server:
1. Created query comparison template to increase the correctness of data comparison
2. Created scalar functions that make correct isEqual calculation
3. Created a mismatch tracking mechanism, that solves 2 problems: mismatch tracking and the result stored in an optimal way.
Frontend
1. Decreased the number of requests to the backend or combined several requests into one. Frequently used methods were speeded up by 5 times.
2. Implemented authorization operations to UI components (so a user should have the operation «create» permission to be able to create something etc.)
Since May 2022 I'm responsible for the development and support of our internal product that helps dev and support teams find mismatches in the domain objects (that happen in the integration bus between the systems) and validate some data for inconsistencies in a single system using SQL queries