Lead Software Engineer Job Description We are looking for currently seeking a Lead Software Engineer POSITION OVERVIEW Lead Software Engineer Location: ROLE OVERVIEW As a Lead Software Development Engineer on the team, you will be responsible for supporting and contributing to the architecture, and design, as well as leading the development, and launch of core product features. You will have significant influence on our overall strategy by helping define these product features, drive the system architecture, and spearhead the best practices that enable a quality product.
Hands-on with NET, API, C#, OOP, Java, JavaScript, SQL
Work with other senior leaders on the team to build the technical strategy & architecture for broad areas of focus
Design & develop world-class, secure software and services
Mentor & grow engineers across the team, leading by example and insisting on high standards
Coordinate team development activities
Develop tools & processes to enable best-in-class operations for our service
STRONG CANDIDATES WILL HAVE
BS/MS degree in Computer Science, Engineering or related field
8 + years of experience building production software systems
Experience leading product development life cycles: from concept, to prototype, test, and implementation, improvement
Significant Experience with developing production-grade parsers, compilers, and/or transpilers
Strong DevOps focus and experience building and deploying infrastructure with cloud deployment technologies like ansible, chef, puppet, etc.
Experience developing cloud software services
Excellent verbal and written communication skills.
Experience with the tools of the trade including a variety of modern programming languages (C#, .Net, Java, JavaScript libraries)
Familiarity with Enterprise technology tools: Service Bus, Caching, SQL ecosystem, Multi-thread, Performance Optimization
Computer Science fundamentals experience in data structures, algorithm design, problem solving, and complexity analysis
OO design/development experience
Test Driven Development experience
Experience with distributed computing and enterprise-wide systems
Experience defining system architectures and exploring technical feasibility trade-offs
Experience developing cloud software services and an understanding of design for scalability, performance and reliability
Development experience defining, developing and maintaining web service API's
Demonstrated the ability to mentor other software developers to maintain architectural vision and software quality
Experience in communicating with users, other technical teams, and senior management to collect requirements, describe software product features, technical designs, and product strategy