Software Engineer Principal, Senior

PNC BankFarmers Branch, TX
Onsite

About The Position

We’re looking for a motivated Software Engineer Principal, Senior to contribute to Enterprise Identity initiatives within an established Agile team. This hands-on, execution-focused role is ideal for developers with strong enterprise experience and a passion for building secure, scalable applications. This role is responsible for designing, developing, and maintaining Java-based solutions, including microservices and RESTful APIs, in support of an Enterprise Customer Identity and Access Management (CIAM) program. Through collaboration with cross-functional teams, you’ll help deliver high-quality, reliable software aligned with modern security standards. The role spans the full software development lifecycle (SDLC), emphasizing clean code, automated testing, and CI/CD practices.

Requirements

  • Proficiency in Java (preferred) or similar object-oriented programming languages.
  • Experience with Java development frameworks and tools.
  • Knowledge of RESTful API design and consumption.
  • Ability to use and test web services effectively, including tools for API exploration and testing.
  • Exposure to development and collaboration tools such as IDEs (e.g., IntelliJ, Eclipse), issue tracking systems (JIRA or similar), and project documentation tools.
  • Proficient with version control systems, particularly Git based system like BitBucket, for managing codebase and collaboration.
  • Familiarity with CI/CD tools and pipelines (for example, Jenkins, CircleCI, or GitLab CI) to automate build, test, and deployment processes.
  • Understanding of build tools like Maven or Gradle for Java projects.
  • Hands-on experience with automated testing frameworks and tools: e.g., JUnit/TestNG for unit testing, Cucumber (Behavior-Driven Development) for defining test scenarios, Karate or Postman for API testing, and Selenium WebDriver for UI testing.
  • Basic understanding of relational databases (SQL) or NoSQL data stores and ability to write simple queries.
  • Customer Focused - Knowledgeable of the values and practices that align customer needs and satisfaction as primary considerations in all business decisions and able to leverage that information in creating customized customer solutions.
  • Managing Risk - Assessing and effectively managing all of the risks associated with their business objectives and activities to ensure they adhere to and support PNC's Enterprise Risk Management Framework.

Nice To Haves

  • Understanding of microservices architecture and testing strategies for distributed systems.
  • Experience building or maintaining software in a microservices or cloud-based environment is desirable.
  • Exposure to developing or supporting large-scale, enterprise-level applications with complex dependencies.
  • Familiarity with regulated or compliance-heavy environments (e.g., finance, healthcare) is a plus if applicable, though not required.
  • Any experience mentoring junior developers or leading small project efforts is a plus.
  • A continuous improvement and proactive mindset towards personal and team growth is highly valued.
  • A strong automation mindset with hands-on experience in test automation frameworks or tools.
  • Experience writing automated tests for APIs and user interfaces using frameworks such as Cucumber (BDD), Karate, or Selenium is a plus.
  • Demonstrated experience integrating automated tests into CI/CD pipelines and working with continuous integration/delivery tools (e.g., Jenkins, GitLab CI).
  • Experience in environments with frequent releases or continuous deployment is beneficial.
  • Track record of contributing to improvements in code quality metrics, test coverage, or overall product performance.
  • Experience optimizing processes or workflows to enhance team productivity and software quality.
  • Familiarity with Spring/Spring Boot or similar frameworks is a plus.
  • Familiarity with CI/CD tools and pipelines (for example, Jenkins, CircleCI, or GitLab CI) to automate build, test, and deployment processes.
  • Application Development
  • Business Management
  • Customer Solutions
  • Design
  • Group Problem Solving
  • Process Improvements
  • Release Management
  • Software Solutions
  • User Experience (UX) Design
  • Application Design
  • Architecture
  • Coaching Others
  • Design Thinking
  • IT Environment
  • Problem Solving
  • Software Process Improvement (SPI)
  • System Development Life Cycle
  • Technical Troubleshooting

Responsibilities

  • Analyze requirements and design software components or applications that fulfill business needs.
  • Write clean, efficient, and maintainable code to implement new features and enhance existing ones.
  • Troubleshoot, debug, and resolve software defects and technical issues discovered during testing or reported by users.
  • Continuously refactor and optimize code for performance, scalability, and security.
  • Participate in code reviews and design reviews, providing constructive feedback to peers and upholding coding standards.
  • Incorporate feedback from others to improve code quality and maintain consistency across the codebase.
  • Work closely with other Software Engineers, Quality Engineers, Architects and Product to clarify requirements, define acceptance criteria, and ensure successful delivery of features.
  • Participate actively in agile team ceremonies (such as sprint planning, daily stand-ups, and retrospectives) to discuss progress and roadblocks.
  • Develop and execute unit tests and integration tests to ensure code reliability.
  • Verify that solutions meet functional and performance criteria.
  • Build automated test cases (e.g., using JUnit, Cucumber).
  • Ensure that automated builds, tests, and deployment scripts are in place, enabling rapid and safe delivery of software updates.
  • Maintain and improve continuous integration and continuous delivery (CI/CD) processes.
  • Contribute to the continuous improvement of development practices and tools.
  • Help streamline workflows by recommending or implementing enhancements in coding, testing, or deployment processes that improve team efficiency and product quality.
  • Leads the design, development, and maintenance of software solutions across multiple product lines.
  • Directs and consults on all phases of software engineering life cycle and troubleshoots technical problems as needed using agile methods.
  • Leads complex problem solving and resolves workflow problems through automation optimization.
  • Monitors security technology trends and ensures the adaptability of techniques to various system architectures.
  • Encourages sound technology choices are made and drive innovative technology architecture and solution design.
  • Provides technical guidance and support to colleagues and solution development.

Benefits

  • medical/prescription drug coverage (with a Health Savings Account feature)
  • dental and vision options
  • employee and spouse/child life insurance
  • short and long-term disability protection
  • 401(k) with PNC match
  • pension and stock purchase plans
  • dependent care reimbursement account
  • back-up child/elder care
  • adoption, surrogacy, and doula reimbursement
  • educational assistance, including select programs fully paid
  • a robust wellness program with financial incentives
  • maternity and/or parental leave
  • up to 11 paid holidays each year
  • 9 occasional absence days each year, unless otherwise required by law
  • between 15 to 25 vacation days each year, depending on career level
  • years of service
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service