Overview

Responsibilities:

  • Perform all aspects of software development within the agile development process, including coordination with other software developers and stakeholders;  

  • Develop innovative approaches to technical software development problems;  

  • Integrate trained machine learning models. 

 

Required Qualifications:

  • At least 4 years of experience in C# (.NET);

  • Excellent knowledge of OOP, design patterns, and principles;

  • Knowledge of SOA; experience working with WCF is a plus;

  • Knowledge of Domain-Driven Design basics;

  • Software development experience with expertise in distributed software architecture on the Microsoft platform with C#;

  • Experience in application development, including analyzing stories, writing code, implementing automated tests, contributing to release and iteration planning, and developing the team's working practices;

  • Work experience in an agile team and experience with globally deployed applications is strongly preferred;

  • Experience with MVVM pattern;

  • Good understanding of multi-threading, concurrency, asynchronous and parallel programming;

  • Experience with REST API;

  • Knowledge of SQL and database design;

  • Be able to self-organize, prioritize tasks, and initiatives in a fast-paced environment;

  • Attention to detail is a must; 

  • Ability to multi-task, problem-solve, and work cross-functionally in a dynamic environment;

  • High energy, go-getter with fresh ideas who takes the initiative to get things done. 
     

Bonus qualifications  

  • Experience with COM and VSTO.  

  • Experience with Rx.NET