Perform tasks in all phases of the development cycle with little or none technical supervision. Appropriately assess problematic situations to gain adequate understanding of problems involved and assume the responsibility of delivering complex tasks on time and in scope within the team’s plan.
Training
Learn technologies involved in the project
Coaching
Take a leadership role when working with peers and coach junior and semi-senior developers/analysts.
Assign tasks according to technical skills, potential and motivation.
Communications
Attend conference calls and exchange e-mails with clients
Suggest changes in client environment to achieve project objectives.
Frequent contact with clients on system design and fully knowledgeable of the client’s business and information flows, as well as the tools and technologies needed to meet client information requirements.
Understand client project domain
Development
Perform difficult coding tasks
Design and code complete small software modules.
Perform code reviews.
Reporting
Report progress of tasks to team lead
Report blocker situations
Documentation
Write project documentation
Requisitos
Experience
5+ years of experience with .NET technologies
5+ years of experience with client/server applications
3+ years working with REST APIs (MVC 5 desirable)
3+ years using relational databases (SQL Server desirable)
1+ year working with React, Angular, Vue or Knockout
Experience with .NET Core
Experience with git, git flows.
Experience with agile methodologies
Requirements
English level Upper Intermediate+
Knowledge of SOLID, OOP (Object Oriented Programming), IoC (Inversion of Control), DI (Dependency Injection), CI (Continuous Integration)
Strong unit testing
Intermediate knowledge of HTTP protocol verbs, headers, RESTful services.