Position: Senior C# (.Net) Developer ( team lead )
Company: Compass
Category: .NET
Experience required: 5y
English level: upper

As a C# technical lead, team leader, and software architect, you are responsible for system design, technology selection, and development phase planning, as well as for the correct and successful execution of the project and the correct documentation of all specifications.
Your responsibilities also include functions such as supporting junior colleagues, mentoring, and helping resolve issues within the team. 


**Responsibilities:**
-Designing, creating, and implementing C# based applications.
-Provide technical leadership in the development and implementation of a product roadmap.
-Oversee developer performance management, identify improvement and growth plans, and work to help provide proper training when necessary
-Identify, prioritize, and execute tasks in the software development life cycle
-Develop automated tests and create unit tests through appropriate tools and scripting
-Ensure quality of code via regular code reviews
-Collaborate with an internal team of front-end developers, backend developers, and quality assurance team to implement requirements
-Monitor infrastructure and identify issues
-Follow the Agile Scrum framework
-Interpreting briefs to create high-quality coding that functions according to specifications.
-Determining application functions and building objectives with the team.
-Ensuring that written code falls in line with the project objectives.
-Problem-solving with other team members in the project.
-Identifying and resolving immediate and potential issues with applications.
-Drafting detailed reports on the work performed and projects completed.
-Participating in group meetings to discuss projects and objectives.
-Assisting other developers with troubleshooting, debugging, and coding.
-Meeting deadlines on fast-paced deliverables.
-Write clean, scalable code using .NET programming languages
-Test and deploy applications and systems
-Revise, update, refactor and debug code
-Improve existing software
-Serve as an expert on applications and provide technical support

**Requirements:**
-Proven experience as a .NET Developer +8 years
-Proven experience as team lead +3 years
-Experience mentoring and coaching junior and intermediate Developers
-Deep C# knowledge, and design/architectural patterns
-Knowledge of MySQL
-Experience in concurrency, creating services, creating macroses, and -multithreading
-Working with sockets, exchange protocols between client and server
-Using version control systems
-Familiarity with architecture styles/APIs (REST, RPC)
-Understanding of Agile methodologies
-Excellent troubleshooting and communication skills
-Attention to detail
-English: upper intermediate
-Russian: upper intermediate
**- Experience working on projects related to TMS and WMS would be a big plus
**