What are the responsibilities and job description for the Principal Software Engineer position at TAB Bank?
As a Principal Software Engineer, you will serve as a senior technical leader, helping guide the evolution of software engineering practices across the organization. This role operates beyond a single team or system, focusing on improving how systems are built, integrated, and operated across multiple domains.
You will partner closely with engineering teams, product, solutions architects, and leadership to influence technical direction, support complex system design decisions, and help teams move toward modern, scalable approaches. This includes establishing patterns for API design, cloud-based systems, data management, and future AI integration, while ensuring systems are resilient, observable, and built for change. You will play a key role in supporting modernization efforts, improving consistency across teams, and helping engineers navigate complex technical challenges. In addition, you will mentor senior engineers and act as a trusted advisor across multiple initiatives.
Essential Duties and Responsibilities:
- Guide teams toward modern engineering practices, patterns, and approaches fit-for-purpose
- Influence technical direction across multiple teams and systems
- Support design and implementation of complex, distributed systems
- Partner with engineering leadership and product teams to align technical solutions with business needs
- Contribute to modernization efforts of legacy platforms
- Provide technical guidance on scalability, resiliency, performance, and system reliability
- Support API design and integration approaches across systems
- Mentor senior engineers and technical leads
- Lead cross-team technical problem-solving and collaboration
- Evaluate and support adoption of emerging technologies (AI/ML, LLMs, event-driven systems, etc.)
- Act as a technical escalation point for complex or high-impact issues
- Present technical concepts and approaches to engineering and leadership audiences
- Other duties as assigned
Required education and experience:
- Bachelor’s degree in Computer Science, Software or Computer Engineering, Data Science, Other STEM Degrees, or a related field (required)
- Minimum 15 years of progressive experience in professional software development
- Demonstrated experience working across multiple systems or domains in a senior technical capacity
- Proven experience designing and developing both front-end (e.g., React, Angular) and back-end systems (e.g., Node.js, .NET Core, Go, Java, C)
- Advanced understanding and hands-on implementation of microservice architecture, including service discovery, distributed communication, containerization, and orchestration (e.g., Docker, Kubernetes)
- Experience designing and developing APIs and system integrations
- Experience supporting or contributing to large-scale modernization efforts
- Strong working knowledge of modern relational and non-relational databases (e.g., PostgreSQL, MongoDB), including query optimization and schema design
- Proven success leading the development and deployment of enterprise-level systems in an Agile environment
Preferred education and experience:
- Master’s degree in Computer Science, Engineering, or related field
- Experience supporting cross-team or enterprise-level technical initiatives
- Familiarity with API standards, authentication patterns (OAuth2, JWT), and integration best practices
Competencies:
- Agile Mindset – Strong practitioner of Agile methodologies, MVP delivery, and lean experimentation. Understands how to balance speed, quality, and business value.
- Systems Thinking – Understands how systems interact and impact one another. Able to navigate complexity across multiple services and integrations.
- Analytical Precision – Possesses superior critical thinking and diagnostic skills for identifying root causes of system or code issues. Applies data-driven approaches to performance bottlenecks and design decisions.
- Mentorship – Committed to developing others through coaching, code reviews, and knowledge sharing. Regularly delivers internal technical talks and contributes to engineering culture.
- Database Architecture – Expertise in both relational (PostgreSQL, MySQL, SQL Server) and non-relational (MongoDB, DynamoDB, Redis) databases. Skilled in schema design, performance tuning, data replication, and transactional integrity.
- Full-Stack Mastery – Proficient in modern front-end frameworks (e.g., React, Angular) and back-end ecosystems (e.g., Node.js, .NET Core, Go, Java, C), with deep fluency in debugging, refactoring, and optimizing across layers.
- Security & Compliance Awareness – Proactively integrates security into design and development processes, with working knowledge of data protection, encryption standards, and common vulnerability mitigation (e.g., OWASP Top 10).
- Advanced API & Integration Design – Expert in building versioned, documented, and secure APIs (REST and GraphQL), using OpenAPI standards and high-throughput integrations. Strong experience with API gateways, authentication flows (OAuth2, JWT), and developer experience (DX) design.
- Cloud-Native and Serverless Engineering – Demonstrates advanced knowledge of container orchestration (Kubernetes), serverless patterns, and event-driven systems. Designs solutions optimized for scalability, cost-efficiency, and fault tolerance in cloud platforms.
- AI/ML Integration – Skilled in incorporating machine learning models, LLMs, and vector databases into production systems. Understands model inference workflows, prompt engineering, and data privacy implications of AI in production.
TAB Bank Offers:
- Onsite Gym
- Tuition Reimbursement
- Paid Holidays
- Gym Reimbursement
- College Scholarships for Employees and Families
- 401(k)
- Paid Time Off (PTO)
- Employee Assistance Program (EAP)
- I Made the Grade
- Holiday Club Program
- Medical, Dental, Vision, Life and AD&D, Voluntary Disability, Flex Spending & Dependent Care
TAB Bank will not sponsor applicants for work visas.