We are seeking an experienced Senior Software Engineer to join the software products organization. As a member of the software products team, this role collaborates with members of the product, architecture, and dev-ops teams to design, build, test, and deploy world-class SaaS solutions to power applications in the public education sector. They will work with technology architects to transform product requirements into scalable, maintainable implementations using industry best-practices.
This individual should be a driven, self-starter, with a pragmatic approach to solving business problems using technology. They should be comfortable working in a small, distributed team, and be an efficient and effective communicator. This role requires strong attention to detail, and the ability to empathize with end-users to develop an appropriate technical solution. The ideal candidate should be familiar with modern testing methodologies and possess very strong testing and debugging skills.
Essential Tasks and Responsibilities:
Design and develop product enhancements and new product functionality;
Ensure products can operate at the necessary scale needed by customers;
Maintain current web applications;
Work closely with a team to integrate designs, components, and ideas together;
Apply software development best practices for development (e.g. SOLID, Design Patterns, TDD, BDD) and configuration management tasks;
Work in an agile software development environment with distributed teams using Scrum;
Ability to constructively discuss, challenge, accept challenges from other viewpoints, and negotiate the best solution to deliver best value to the customer and time to market;
Participate in all aspects of the product including design, development, deployment, and maintenance; and
Successfully partner with other teams, such as client services, product management, and quality assur
Skills and Professional Experience:
Full stack web-based application design and development experience;
Must have experience in the following technologies: C# and . NET, Entity Framework, build and deployment tools (with a preference for Team City and Octopus), and Git;
Strong database development skills utilizing SQL Server;
Willingness to learn multiple technologies (languages, databases, frameworks, etc.) as needed;
Strong architectural acumen with ability to visualize future state, describe how to achieve it and then implement;
Experience working with SaaS is desirable;
Experienced in developing and operating software products in a cloud-based environment is extremely desirable;
Experience with Azure is desirable and would be considered a plus;
Strong communication, analytical, entrepreneur skills with pride in personal contributions and passion to learn and grow your professional skills/experience; and
BA/BS Degree in Computer Science, Software Engineering or related software engineering experience;
