Principal Software Engineer
Job Summary
The Principal Software Engineer is responsible for leading the design, development, and evolution of scalable, resilient, reliable, and intelligent software systems. This role combines deep technical leadership with hands-on engineering expertise and requires a customer-centric, forward-looking mindset to integrate AI-driven development practices and agent-based architectures into modern software delivery.
The Principal Software Engineer serves as a technical authority and innovation leader, shaping architecture, mentoring engineers, and driving engineering excellence. Expertise in cloud-native architectures, modern development frameworks, and software engineering best practices is essential for delivering high-quality, secure, and scalable solutions.
Key Responsibilities
Software Engineering & Delivery
- Design and develop full-stack applications while ensuring alignment with enterprise architecture standards.
- Participate in Agile software development practices and collaborate effectively with cross-functional teams.
- Design, modify, develop, and implement modern application components, tools, and services that support strategic business objectives.
- Build scalable, maintainable, resilient, and highly available distributed systems.
- Apply software security best practices throughout the Software Development Life Cycle (SDLC).
- Identify, prevent, and remediate security vulnerabilities to protect systems and sensitive data.
- Serve as a technical leader and mentor, promoting innovation, accountability, and engineering excellence.
- Contribute to architectural decisions and technology strategy.
AI-Driven Development & Agentic Engineering
- Leverage AI-assisted development tools (e.g., GitHub Copilot and similar technologies) to improve engineering productivity and code quality.
- Design and implement agentic workflows throughout the software development lifecycle.
- Utilize AI technologies for:
- Code generation
- Code refactoring
- Code optimization
- Automated code review
- Quality analysis
- Intelligent test generation
- Defect detection
- Develop and integrate AI-powered applications and services.
- Build customer-facing solutions utilizing Large Language Models (LLMs).
- Implement AI-driven automation for engineering and operational processes.
- Develop multi-agent workflows for orchestration and automated decision-making.
- Apply advanced AI solution patterns including:
- Retrieval Augmented Generation (RAG)
- Prompt engineering
- Context management
- Agent orchestration
- Tool integration
- Ensure secure, compliant, and responsible use of AI technologies, particularly when handling regulated financial data.
Required Qualifications
- Bachelor's degree in Computer Science, Software Engineering, Engineering, Mathematics, or a related technical discipline.
- 7+ years of hands-on software development experience delivering and supporting commercial software applications.
- Demonstrated experience leading, mentoring, and developing engineering talent.
- Strong experience developing applications using Node.js and modern Node.js frameworks.
- Hands-on experience with Java, Spring, and Spring Boot.
- Experience with modern front-end frameworks such as Angular, React, or similar technologies.
- Strong understanding of authentication and security protocols including OAuth and SAML.
- Experience implementing security controls and protecting enterprise systems and data.
- Experience building and supporting containerized applications using Docker, Kubernetes, and/or OpenShift.
- Cloud platform experience with AWS, Microsoft Azure, and/or Google Cloud Platform (GCP).
- Experience developing and deploying solutions that manage sensitive or regulated data.
- Strong knowledge of Software Development Life Cycle (SDLC) processes.
- Experience with CI/CD pipelines and DevOps tooling, including:
- Jenkins
- Harness
- Git
- Bitbucket
- Nexus
- Experience with relational databases including:
- MySQL
- PostgreSQL
- Oracle
- Experience with NoSQL databases such as MongoDB.
- Strong understanding of data structures and algorithms.
- Experience utilizing code quality and code coverage tools.
- Strong verbal, written, and interpersonal communication skills.
- Hands-on experience using AI-assisted development tools such as GitHub Copilot or equivalent.
- Familiarity with Large Language Models (LLMs) and AI application development concepts.
Preferred Qualifications
- Experience developing applications with Go and/or Python.
- Experience working with streaming and event-driven platforms including:
- Kafka
- Amazon Kinesis
- Amazon SQS
- Apache Storm
- 3+ years of experience within financial services, consumer banking, wealth management, or trading environments.
- Understanding of banking systems, operations, and financial services processes.
- Experience with Domain-Driven Design (DDD).
- Experience implementing Command Query Responsibility Segregation (CQRS).
- Cloud certifications such as:
- AWS Certified Solutions Architect
- AWS Certified Developer
- Equivalent Azure or GCP certifications
Technical Skills
Programming Languages
- Node JS
- Java
- Python
- GO
Front-End Technologies
- Angular
- React
Frameworks
- Spring
- Spring Boot
- Node.js Frameworks
Cloud Platforms
- AWS
- Azure
- GCP
Containerization & Orchestration
- Docker
- Kubernetes
- OpenShift
Databases
- MySQL
- PostgreSQL
- Oracle
- MongoDB
DevOps & CI/CD
- Jenkins
- Harness
- Git
- Bitbucket
- Nexus
Security
- OAuth
- SAML
- Secure SDLC Practices
AI & Emerging Technology
- GitHub Copilot
- Large Language Models (LLMs)
- Retrieval-Augmented Generation (RAG)
- Prompt Engineering
- Agentic AI Workflows
- Agent Orchestration
- AI Automation
What Sets This Role Apart
- Lead digital-first banking transformation initiatives.
- Drive adoption of AI-powered and agentic software engineering practices.
- Influence enterprise architecture and next-generation development methodologies.
- Partner with engineering leaders to shape the future of software delivery and innovation.
Hours & Work Schedule
- Hours per Week: 40
- Work Schedule: Monday - Friday