Search

Lead Software Developer

T2 Systems
locationIndianapolis, IN 46262, USA
PublishedPublished: 6/14/2022
Technology
Full Time

Job Description

The Lead Developer transforms business requirements into robust technical designs. You will take ownership of project delivery by leading a team of developers. Your responsibilities include ensuring alignment with architectural standards, driving development best practices, and delivering high-quality solutions. This role demands strong leadership, technical expertise, and the ability to manage distributed teams to achieve successful project outcomes.

Essential Position Functions

· Architect, develop, and maintain scalable software applications with little or no supervision

· Drive the full software development lifecycle, including requirements analysis, system design, implementation, testing, and deployment

· Lead a team of developers, enabling those around you to do their best work

· Lead troubleshooting efforts for complex software and integration issues

· Champion software quality through rigorous code reviews, automated testing, and continuous integration practices

· Provide recommendations on architecture direction, product direction, and development tools

· Work closely with other departments to provide designs that solve business problems and ultimately benefit our customers

· Produce and maintain comprehensive documentation for software architecture, code, and development processes

· Evaluate and integrate emerging technologies to enhance system performance and reliability

· Mentor and guide engineers, fostering a culture of technical excellence and continuous improvement

· Collaborate with cross-functional teams to align software solutions with business and operational goals

· Interact with product owners and stakeholders to gather information, provide education, give status updates, and communicate relevant project-related activities

Supervisory Responsibilities

This position will act as a team lead on an agile team. This position requires a comfort level with leadership towards ensuring other developers are producing quality code. This position has the authority to determine the corrective action needed to achieve desired outcomes.

Education and Qualifications

· Bachelor's or Master's degree in Computer Science, Engineering, related field, or 7+ years of professional software development experience

· 3+ years of experience as part of an agile development team

· Demonstrated success in delivering projects from concept to completion

Required Technical Skills

· Expert proficiency in C# and .NET Framework, with willingness to adopt newer .NET technologies

· Working knowledge of Java and related frameworks (Hibernate, JPA)

· Expert knowledge of Object-Oriented Programming (OOP) principles

· Expert knowledge of varying design patterns such as CQRS, API Gateways, and event-driven design

· Expert knowledge of building and architecting REST APIs

· Expert knowledge of distributed systems and microservice architectures

· Strong experience with relational databases (SQL Server, MySQL, Azure SQL, Oracle)

Required Platform Experience

· Azure API Management

· Azure Functions

· Kafka (event streaming)

· Azure Redis Cache

· Azure SQL Database

· Dynatrace (application performance monitoring)

Additional Technical Skills

· Experience with CI/CD pipelines and deployment automation

· Experience with GitHub and GitHub Actions

· Experience working with AI-assisted development tools (GitHub Copilot, Cursor, or similar)

· Experience with the Atlassian toolset, especially JIRA

· Familiarity with Agile development methodologies

· Knowledge of networking protocols and cybersecurity best practices

Knowledge, Skills, and Abilities

· Ability to work directly with customers to drive to business outcomes

· Excellent communication skills with the ability to convey complex technical concepts to non-technical stakeholders

· Excellent organizational and leadership skills

· Ability to work with a diverse group of development team members

· Ability to work on multiple features and refactoring/support concurrently

· Ability to work across a development team to keep sprint commitments on track

· Ability to stay on the leading edge of technology trends

· Ability to problem solve: define problems, collect data, establish facts, draw conclusions

· Ability to prioritize tasks and tactfully negotiate priority with stakeholders

· Passionate about continuous improvement, efficiency at scale, and automation

  • · Committed to self-study to maintain or increase technical abilities
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...