enterprise software development / system modernization / complex technology implementations
Apache
Kafka
Redis
domain-driven design
enterprise system integrations
Jira
About Towerloan
We take pride in what we do!
Deciding to come grow with us is an exciting opportunity to enhance your career success stories.
You are the center to what we do.
We would love to have you here!
Responsibilities
Lead software development initiatives, including the modernization of Tower Loan's loan management system, ensuring projects align with established technical requirements, timelines, and business objectives.
Manage and develop technical Team Leads, providing coaching, performance feedback, and guidance to support the effectiveness and professional growth of software development teams.
Oversee engineering project plans, resource allocation, delivery schedules, dependencies, and potential risks, communicating significant concerns to the Chief Technology Officer.
Collaborate with the Financial Services Product Manager and Business Analysts to translate approved business requirements into actionable development plans and priorities.
Work with software architects and technical Team Leads to establish consistent architecture standards, system designs, development practices, and integration requirements.
Provide technical oversight through system design evaluations, code reviews, and quality assessments to ensure applications are reliable, maintainable, and efficient.
Guide the implementation of modern software development technologies and practices, including C#, .NET, SQL Server, microservices, APIs, and event-driven architecture.
Ensure software development practices incorporate appropriate security controls, data protection measures, regulatory considerations, and system audit capabilities.
Oversee development processes, including source control, automated testing, continuous integration and deployment, and release readiness.
Establish accountability for code quality, testing standards, documentation, issue resolution, and overall team performance.
Coordinate technical dependencies and system integrations across development teams to maintain compatibility, data accuracy, and reliable system performance.
Support the transition from legacy applications to modern platforms, coordinating migration activities, system compatibility, and implementation readiness.
Lead the investigation and resolution of significant technical issues, identifying root causes and implementing improvements to prevent recurring problems.
Monitor engineering performance through development timelines, software quality, defect trends, release efficiency, and system reliability.
Evaluate staffing needs, participate in hiring and onboarding, and support employee development, performance evaluations, and succession planning.
Explore opportunities to improve software development processes through emerging technologies, including artificial intelligence, while maintaining appropriate security and quality controls.
Facilitate communication and coordination among development teams, Quality Assurance, Product Management, Information Technology, and external technology partners.
Provide regular updates to the Chief Technology Officer and other stakeholders regarding project progress, technical challenges, resource needs, and development priorities.
Ensure technical documentation, system architecture decisions, integration requirements, and operational procedures are maintained to support long-term system reliability.
Perform all other duties as assigned.
Requirements
Strong knowledge of software engineering principles, system architecture, application development, and modern programming technologies, including C# and .NET.
Demonstrated ability to lead multiple software development teams, manage technical leaders, and coordinate complex technology initiatives.
Understanding of distributed systems, microservices, APIs, event-driven architecture, and relational databases.
Ability to evaluate technical designs, review code quality, and guide engineering decisions while delegating day-to-day development responsibilities.
Experience managing software delivery schedules, development resources, technical priorities, and cross-team dependencies.
Knowledge of software testing, code reviews, continuous integration and deployment, and secure development practices.
Strong leadership and mentoring skills with the ability to develop employees, manage performance, and maintain team accountability.
Excellent analytical, problem-solving, and organizational skills with the ability to resolve technical challenges and manage competing priorities.
Ability to collaborate effectively with Product Management, Business Analysts, and other technology teams to achieve business objectives.
Strong written and verbal communication skills with the ability to explain technical information and project updates to leadership and stakeholders.
Three or more years of experience managing software development teams, preferably including technical Team Leads or multiple development teams, required.
Extensive experience with C#/.NET, SQL Server, APIs, distributed systems, and software engineering reviews required.
Preferred
Bachelor's degree in Computer Science, Software Engineering, Information Technology, or a related field preferred; equivalent professional experience considered.
Eight or more years of professional software development or software engineering experience preferred.
Demonstrated experience overseeing enterprise software development, system modernization, or complex technology implementations strongly preferred.
Experience with microservices, Apache Kafka, Redis, domain-driven design, and enterprise system integrations strongly preferred.
Familiarity with Agile development methodologies, automated testing, CI/CD pipelines, and software release management preferred.
Experience with Jira, Azure DevOps, or similar software development management tools preferred.
Experience in consumer lending, financial services, payments, or other regulated industries beneficial.
Experience managing internal development teams and external contractors preferred.
Physical Requirements
Stand, walk, and/or sit for eight (8) hours a day.
Communicate effectively, verbally and in writing, in person, via telephone, or electronically.
Lift and maneuver up to 20 lbs.
The above description outlines the most significant job functions performed, but may include other similar functions or assignments not explicitly mentioned.