As a Lead Software Engineer, you will be responsible for designing, developing and implementing complex web applications and backend services for desktop and mobile devices. The Lead Software Engineer must have be an expert with strong focus and understanding of .NET. To be successful in the role of Lead Software Engineer, you must be able to work effectively in a fluid, fast-paced agile environment. This position requires strong leadership, design, and communication skills to effectively work with management, team members and business contacts.
Technology We Use:
C#, .NET, AWS, AngularJS/Typescript, NHibernate/Fluent NHibernate, Unity DI
Architect, design, document and develop new programs or maintain existing programs based on specifications
Act as technical resource for an agilescrum team and actively participate in the project planning, sprint planning, daily scrum, and sprint review.
Develop, implement and maintain unit tests of programs
Be pragmatic about what we’re testing
For the assigned applications, functional areas or projects:
Develop and maintain thorough system knowledge
Participate in problem solving and troubleshooting
Facilitate functional test planning and testing
Work with the team to maintain system quality
Stay current with changes in the technical area of expertise, best practices, newer frameworks, and patterns related to all technologies (Backend + Frontend)
Mentor other Software Engineers through the software development process
Minimum of 6 years professional experience in C#
Minimum of 3 years professional experience writing SQL backed applications
What We Look For:
Someone who’s passionate about and stays on the cutting edge of emerging .NET technologies
Experience building clean, well defined, backend services that scale to an ever increasing user and workload demand
Willingness to test as much of the core functionality of our app as possible
Experience consuming and creating web services in a .NET environment.
Experience building and implementing scalable applications that use modern design patterns and practices
Ability to turn high-level requirements into a working system through iterative development
Ability to work on multiple projects and be flexible to adapt to changing requirements
High energy, confident, ambitious and self-motivated individual.
Must be an effective communicator
Willingness to mentor Software Engineers
BS in Computer Science or related degree, or equivalent work experience