Senior .NET Developer
This is a role within our Managed Services team, whose goal is to keep client environments running smoothly. This means that the people in this group need to thrive on being in a fast-paced environment where priorities can shift quickly, be very good at problem-solving, and have outstanding client-management skills. You will be supporting custom applications/solutions that have been previously delivered to our clients, helping them further extend and/or maintain functionality to accommodate their ever-changing business requirements and processes. In this role, you will be switching context frequently as you will be working on multiple projects at different stages of the project lifecycle simultaneously. It is important that the applicant have a strong background in developing and supporting scalable, maintainable, high-quality, and high performing web applications using the Microsoft technology stack.
- Develop and maintain features in .NET custom applications and .NET components of Sitecore or SharePoint solutions based on feature specifications and technical designs
- Contribute to creating feature specifications and technical design schematics
- Troubleshoot, support, and build upon pre-existing technology solutions within existing architecture/patterns
- Contribute to requirements gathering and analysis activities such as storyboarding, developing use cases, and creating functional requirements specifications
- Create database models and build out models using SQL Server, then surface data to user interfaces by using object oriented techniques, often using object-to-relational mappers
- Create web user interface server-side functionality using ASP.NET Web Forms, ASP.NET MVC, Sitecore, and SharePoint
- Take responsibility for feature-focused unit and system testing (built both by you and others).
- Contribute to facilitating acceptance testing procedures and monitoring results
- Contribute to performance and load testing procedures and issue remediation
- Solid understanding of object-oriented programming (OOP) and current design patterns/practices; and when we say solid, we mean SOLID.
- Deep hands-on knowledge of:
- The .NET Framework including Visual Studio, C#, and ASP.NET.
- Experience with designing relational databases and optimizing database structure for performance and/or maintainability and the ability to design and optimize queries.
- .NET based CMS (Sitecore, EPiServer, Kentico, Umbraco, etc).
- Experience with Object Relational Modeling (ORM) with different tools such as Entity Framework (and/or nHibernate) and LINQ.
- Experience with source control, work item tracking, and build management with Team Foundation Server (or similar).
- Consider refactoring a standard part of the development process.
- Focus on making yourself and those around you great.
- Motivation with an emphasis on team performance.
- Passion about building high-quality systems with software implementation best practices.
- Eagerness to learn and work outside your technology comfort zone.
- Ability to be self-motivated, independent, and detail-oriented.
- Exhibit exceptional relationship management skills.
- Demonstrate excellent verbal and written communication skills.
- Knowledge of sound business practices and a proven track record of anticipating and exceeding customer expectations.
Nice to Have
- Strong experience working with layered architectures (N-Layer, Onion/Hex, DDD, CQRS) and an appreciation for appropriate layering and application structure.
- Hands-on experience building scalable web applications, in particular high frequency and low latency web applications with optimal memory management, performance, and scalability as a key focus.
- Experience in development and implementations using:
- Microsoft SharePoint
- Experience with Styling and Responsive Design techniques using technologies such as LESS, HTML5, Bootstrap, and SASS.
- Experience with Client-side browser development using jQuery, Knockout, or AngularJS; emphasis on Single Page Applications (SPA).
- Experience with native mobile application development on any platform.
- Experience with Cloud ecosystems including Azure or AWS.