What is a Lead Software Engineer (Full stack) at Advantage Intelligence?
As a Lead Software Engineer at Advantage Intelligence, you will lead highly skilled software engineers in designing and developing products that follow best architectural practices and coding standards. You will be hands-on in developing clean and maintainable full-stack applications in collaboration with the cross-functional engineering teams. In addition to having strong technical expertise, the Lead software engineer must also have the requisite soft skills to help foster a culture of innovation and continuous improvement on the team.
· Collaborating with various stakeholders to determine software requirements
· Overseeing the entire software development lifecycle for a team of software engineers and providing technical direction
· Taking full-stack ownership of the product by consistently writing production-ready, and testable code
· Consistently creating optimal design adhering to architectural best practices, scalability, reliability, security, and performance
· Designing, building, documenting, implementing, and operationalizing highly scalable, available, reliable products and applications that are continuously integrated and deployed using automated CI-CD pipelines
· Enabling APM, exception logging, user analytics, monitoring, and alerting for all products and services
· Consistently planning and executing efforts to address technical debt
· Ensuring continuous integration and continuous deployment model is followed across the responsible products and systems
· Evangelizing new coding standards, design patterns, and programming concepts for the team
· Consistently creating and maintaining technical documentation throughout the software development life cycle
· Conducting knowledge-sharing sessions within the team to enhance the team’s knowledge base
· Consistently monitoring the software development maturity standards and fine-tuning controls like style guidelines, code coverage, and static code analysis for continuous improvement
· Triaging product or system issues in production, debugging, performing root cause analysis, implementing the resolution and preventive measures to maintain the stability of the system
· Continuously improving your domain knowledge by attending trainings and leveraging corporate learning tools
· Fostering a product mindset, identifying opportunities for improving application functionality and performance issues by working with cross-functional teams
Education Level: (Required): Bachelor's Degree or equivalent experience
Field of Study/Area of Experience: Computer Science or comparable major
· Outstanding collaboration and communication skills are essential
· 5+ years of experience with the following:
o Backend development with technologies like C#, .NET core, ASP.Net
o Frontend development with technologies like Angular, React, HTML5, CSS3
o Cloud services, serverless technology, and microservices like Function-as-a-Service, Containers, and managed databases (Azure preferred)
· Experience with the following:
o Developing web applications using REST APIs, microservices, relational and noSQL databases
o Working with concepts and methodologies such as domain-driven design, API-first approach, test driven development
o Implementing continuous integration and continuous deployment (CI/CD) pipelines with added stages for automated unit tests, code coverage, styling guidelines and static code analysis.
o Developing applications with instrumentation for APM, exception logging and user analytics (Datadog preferred)
o Mentoring and guiding junior developers
The salary range for this role is $145,000-$160,000.