Key responsibilities:
Develop features across multiple subsystems within our applications, including collaboration in requirements definition, prototyping, design, coding, testing and deployment
Understand how our applications operate, are structured, and how customers use them
Provide engineering support (when necessary) to our technical operations staff when they are building, deploying, configuring and supporting systems for customers
Participate with the engineering and operations teams to define plans for standardizing, scaling and enhancing our products and the services utilized to deploy/install/release those products
Participate in interactions with customers as a technical expert for product subsystems
Investigate, analyze and make recommendations to management regarding technology improvements, upgrades and modifications
Other duties from time to time as determined by management
Essential technical competencies:
5+ years of experience in software development; demonstrated success developing a variety of software systems while taking on increasing responsibility for analysis, design and implementation tasks
3+ years of experience building web-based software systems, utilizing N-tier architectures, dynamic content, highly scalable approaches, and complex security models/implementations
OO development experience (OOPS, Design Patterns) with C# server-side development in large scale, multi-threaded business critical applications
Good design skills using n-tier architectures (scalability, multithreading, caching, business & data layers) or SOA based applications
.Net , .Net Core & above frameworks
Database skills (SQL/Oracle), ability to write stored procedures
Basic understanding of patterns like MVP, MVVM, MVC etc
Should have more than 12 months of experience in designing applications using MVC
Strong hands-on experience on server-side concepts like Messaging, Workflow, SOA