Summary: The Senior Full Stack Software Engineer is responsible for contributing to the design and development of innovative software solutions to business challenges. This role will provide guidance to other software engineers regarding producing quality code and following best practices and industry standards.
Responsibilities: Analyzes, designs, and develops solution to highly complex and advanced functional requirements covering front-end, middleware and database. Establishes code base framework and coding best practices for projects. Investigates and troubleshoots critical production issues. Mentors and coaches engineers to enhance technical skills. Creates technical documentation of software design and implementation. Participates in functional and user story requirements discussions. Participates in technical analysis, task breakdown and estimations. Participates in project cadence meetings. Performs other duties as assigned. Upholds the Crawford Code of Business Conduct.
Education:Bachelor's degree in engineering, computer science or related field.
Knowledge and Skills: Good understanding of design patterns and software architecture. Proficient in agile and software development principles and processes. Excellent problem-solving and analytical skills. Good communication skills. Ability to coach and mentor software engineers. Application development using .NET 5, .NET Core Front-end web application development using JS frameworks and Angular Database platforms using MS SQL Server. RESTful API and microservices development using ASP.NET Core, ASP.NET MVC. Cloud computing platforms and technologies using Azure. Familiar with containers using Docker. CI/CD tools and technologies with Azure DevOps (Repos, Pipelines, Artifacts). Source control management using GitHub and Azure DevOps Git. IDE tools like VS Code and Visual Studio. Unit test frameworks using Nunit, VS Tests, Jasmine, Karma, Moq.
Experience:Five years of experience in software development.Three years of experience in database development using MS SQL Server Databases.Three years of experience in back-end application development using .NET or similar programming languages.Three years of experience in front-end application development using HTML, CSS, and JavaScript.
Decision Making/Interaction:Frequent collaboration with peer software engineers, architects, development managers, business owners and end-users.
Special Requirements/Certifications: Azure Cloud Practitioner Certification preferred. Scrum Master Certification preferred.