Full Stack Software Engineer
DescriptionPrimary Function and Scope:Design, develop, and maintain components for an ASP .NET web application.Design front-end components for optimal user experience using HTML, CSS, and JavaScript.Design server-side components using C# and SQL server using modern software design patterns. Update and refactor legacy systems to comply with contemporary code standards.Support and contribute to an existing suite of automated white-box software tests.Design, develop, and maintain supporting .NET applications related to:Automated background tasks.Integrations with SolidWorks, Enterprise PDM Vault, and AutoCAD Electrical.Integrations with ERP and accounting software.Assist with in-depth root cause analysis and technical research for application issues escalated from IT support related to .NET applications.Assist with an internal quality assurance process for .NET applications.Essential Duties & Responsibilities include, but are not limited to:Participate in requirements gathering, prototyping, and planning for a suite of internal .NET applications as part of an agile software engineering workflow using Azure DevOps.Design, develop, and test .NET software solutions using our technology stack. This includes:Intuitive and flexible web pages with interactive UI elements.Robust server-side application and data access services.SQL data structures, procedures, and other database elements.Maintain and modernize existing internal .NET applications by introducing modern software engineering patterns, .NET and C# features, and more efficient algorithms.Adhere to and uphold a set of best practices, standards, and conventions for .NET software solutions defined by the manager. Perform code review for other developers to reinforce compliance.Review and investigate .NET application issues escalated by the IT support team. Perform root cause analysis and provide resolution options to IT support and IT development manager.Execute black-box tests with existing software acceptance criteria against a .NET application. Record and report test results through a DevOps system.Any other task assigned by management within scope of position, federal and state regulations.Front-EndOur technology stack includes:ASP .NET MVC with Razor ViewsHTML, JS, CSS, DevExtreme jQuery, BootstrapBack-End.NET Framework, .NET Standard, .NETC#, T-SQL (SQL Server)Quartz.NET, SolidWorks Interop, EPDM InteropRequirementsQualification Requirements: To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill and/or ability required.Education And/or ExperienceBS Degree in Computer Science, Software Engineering, Information Technology, or related fields.3+ years of experience with design, development, and maintenance of .NET web applications using C#.Familiarity with .NET Framework, .NET Standard, and .NET Core is required.3+ years of experience with web development technologies: HTML, JS, CSS, jQuery, Bootstrap3+ years of experience with SQL and relational databases. T-SQL experience preferred.Familiarity with modern software development best practices, design patterns, and conventions e.g. SOLID, OWASP Top 10, GoF Design Patterns.Familiarity with Git. Understanding of version control principles.Experience with any of the following is a plus, but not required:DevExtreme, ReactSolidWorks Interop, EPDM InteropEntity Framework or micro-ORM systems (Dapper)Azure DevOps Server, YAML pipelinesDesign Experience with .NET Core and migration from .NET Framework to .NET Core is a big plus.Excellent technical writing skills. Ability to create documentation for CMMC change control compliance and user-facing patch notes & work instructions.