- Contribute to requirements gathering and analysis activities such as storyboarding, developing use cases, and creating functional requirements specifications.
- Contribute to creating feature specifications and technical design blueprints.
- Develop custom features in Visual Studio based on specifications and technical designs.
- Operate within the dynamics of a team; exercise proper etiquette and citizenship during "team development" sprints.
- Providing direction on the best web development, application, and testing frameworks to leverage for implementing the required design such as Bootstrap, Skeleton, jQuery, REST API, AngularJS, TypeScript, Node.js, Knockout, Grunt, and Gulp.
- Create server-side functionality using object oriented design principles.
- Take responsibility for feature-focused unit and system testing (built both by you and others).
- Contribute to user acceptance testing procedures and monitoring results.
- Contribute to performance and load testing procedures and issue remediation.
Required Skills and Abilities
- 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 MVC.
- Experience with designing relational databases and optimizing database structure for performance and/or maintainability and the ability to design and optimize queries.
- 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, Git (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
- Other similar platforms
- Experience with Styling and Responsive Design techniques using technologies such asHTML5, Bootstrap, LESS, 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.
- Demonstrate prior consulting experience.
- Exposure to project management experiences is a plus.
Willingness to travel to clients located throughout the local area on a regular basis and a willingness for occasional travel to client sites located throughout the United States on an occasional basis.
Bachelor of Science Degree or equivalent work experience