About the role : Alkami is hiring a Software Engineering Manager, a cross-functional and autonomous position involved in coordinating tasks between various teams and departments (Engineering, Quality Engineering, SRE, Release Management, Product, Architecture, TPMs) to ensure the high-quality delivery of software. This person has a strong technical aptitude, a hands-on software development background, strong problem-solving skills, and functions as the 'grease' to keep a complex system with a host of moving parts operating smoothly. This innovative leader coaches and mentors their direct reports to achieve personal and professional growth. They cultivate a collaborative, engaging, fast-paced, and result-oriented environment. This person is hands-on and engaged with their teams and responsible for evaluating individual and team performance metrics to maximize team efficiency. They can drive technical discussion/triage/research and help determine root cause analysis
Roles and Responsibilities
- Working with Product Engineering teams to deliver functional requirements and ensure features are built to specifications
- Lead, mentor, and inspire a team of software engineers, providing guidance, support, and feedback to foster their professional growth and development.
- Build architecture design, ensure the quality of architecture and design of systems, influence product roadmap, introduce new technologies and take ownership and responsibility over new projects.
- Participate in the entire application lifecycle, focusing on coding, debugging, testing, release and maintenance.
- Improve and maintain the team's Say/Do ratio by managing resource allocation, workload distribution, and project priorities to ensure timely delivery of high-quality software solutions.
- Maintain a deep understanding of software development technologies, trends, and best practices and provide technical guidance and expertise to the team.
- Oversee and manage on-call incidents, including troubleshooting and resolving critical disruptions to ensure minimal downtime around the functionality of your team.
- Drive the adoption of modern development practices, tools, and frameworks to improve productivity and product quality.
- Promote a culture of collaboration, accountability, and continuous learning within the team.
- Champion innovation and experimentation, encouraging team members to explore new technologies and approaches to solving complex problems.
- Working with Product Management to collaborate through creative brainstorming sessions and assist in writing requirements for technical debt
- Reporting accomplishments, goals, issues, and deliverable statuses to effectively manage stakeholder expectations
- Establishment of performance goals for all direct reports
- Continuing education with regards to management philosophies, knowledge of the banking industry, as well as applications that will be specific to segments of our client base
Required
- 12+ years of experience in software development or similar engineering fields with 4+Years in managing the team.
- Strong hands-on experience in several of the following (or equivalent): .NET, Java, C#, Linux Container Development,k8s, MVC, SaaS, SOA, PostgreSQL, MS SQL Server, Modern Javascript Frameworks, Entity Framework, microservices
- Proven experience in building and delivering SaaS-based software with modern system architecture, such as microservice-based architecture and cloud native applications.
- Experience working with one of the Cloud Service providers (AWS, Azure, Google Cloud Platform)
- Solid understanding of Operational Excellence and able to showcase how to apply in the development life cycle. e.g., Dev/Ops, CI/CD, Automated Testing, Observabilities, etc.
- Experience with Observability tools like Grafana, Newrelic, Haystack etc
- Experience with real-time processing using event-driven architecture and batch processing of high-volume transactions.
- Experience building complex role-based access and entitlement systems.
- Proficiency in making data-driven decisions and evaluating trade-offs to prioritize projects and allocate resources effectively. This involves considering various factors such as technical feasibility, business impact, and resource constraints.
- Experience in building scalable systems that are operationally efficient
- Demonstrated experience in leading and motivating cross-functional teams towards achieving shared objectives. This includes setting clear expectations, providing guidance, and fostering a collaborative and inclusive work culture.
- Ability to build and maintain productive relationships with a diverse array of stakeholders and groups in the organization
- Strong analytical and problem-solving skills to address technical challenges and overcome obstacles. This includes troubleshooting complex issues, identifying root causes, and implementing effective solutions in a timely manner.
- Successful in managing multiple concurrent work streams
- Experience in recruiting, hiring, mentoring/coaching and managing teams of Software Engineers to improve their skills, and make them more effective, product software engineers
- Experience in communicating with users, other technical teams, and senior leadership to collect requirements, describe software product features, technical designs, and product strategy
- Experience managing global team working out of multiple timezones
- Experience in Lean-Agile development methodologies such as Kanban or Scrum
Skills Required
K8S, Microservices, Automated Testing, Google Cloud Platform, Newrelic, Grafana, Dev Ops, .NET, Saas, Ms Sql Server, Mvc, Azure, Java, Soa, Linux, Aws, Postgresql, Entity Framework