Senior Principal Software Engineer - Full Stack
Discover. A brighter future.
With us, you’ll do meaningful work from Day 1. Our collaborative culture is built on three core behaviors: We Play to Win, We Get Better Every Day & We Succeed Together. And we mean it — we want you to grow and make a difference at one of the world's leading digital banking and payments companies. We value what makes you unique so that you have an opportunity to shine.
Come build your future, while being the reason millions of people find a brighter financial future with Discover.
Job Description
At Discover, be part of a culture where diversity, teamwork and collaboration reign. Join a company that is just as employee-focused as it is on its customers and is consistently awarded for both. We’re all about people, and our employees are why Discover is a great place to work. Be the reason we help millions of consumers build a brighter financial future and achieve yours along the way with a rewarding career.
Develops, maintains and supports full stack solutions to fit business needs. Full stack solutions require one or more of the following: front-end (user interfaces), back-end APIs and services, database and DevOps development, unit, component and end-to-end automated tests.
Works directly with business partners to understand business requirements. Independently innovates on and advocates for best practices within the team, and collaborates on them across the enterprise. Carries a holistic view of all products and their interactions to design complex solutions and plan for how new projects will fit into the larger ecosystem. Solves complex technical problems. Guides teams in implementation of solutions from inception to production providing architecture, design, and leadership.
Responsibilities
- Contribute to project ideation and design to understand needs, propose features, create early prototypes and transform them into exciting experiences. Design, development and iterate on a solution for a specific innovative business objective (concept proposal). Develop front-end and backend components with a focus on user experience and services-based architecture. Leverage best-practice knowledge, reference architectures, and patterns from prior projects to promote re-use. Ensures Minimal Viable Prototypes/Pilots/Products can be taken through the necessary steps to become scalable, supportable managed solutions. Develop and present detailed technical demonstrations to senior leadership and project stakeholders.
- Uses holistic knowledge open-source tools for improved consistency and developer time to value. Bring a deep understanding of the full technology stack, working with emerging and traditional technologies, adjusting between the art of the possible and the requirements to adhere to corporate privacy, risk and security protection guidelines.
- Write high-quality code with best practices and design patterns in mind. Have fun brainstorming and collaborating in team that is excited to answer your questions and share their wisdom with you. We expect you to do the same.
- Develops and maintains complex backend systems.
- Uses holistic knowledge of all products in and adjacent to the team’s ecosystem to plan how new systems will be built and integrated; finds new ways to bring value to the company through the use of technology.
- Innovates on and advocates for best practices and improved processes within the team and with internal partners; stays up to date with technology trends and innovates; mentors team members.
- Creates and maintains DevOps processes, application infrastructure and utilizes cloud services (including database systems and models).
- Supports live systems to ensure business continuity.
Minimum Qualifications
At a minimum, here’s what we need from you:
- Bachelor’s Degree in Information Technology or related field
- 10+ years of experience in Computer Science, Information Technology or related field
- In lieu of education, 12+ years of experience in Computer Science, Information Technology or related field
Preferred Qualifications
If we had our say, we’d also look for:
- Experience as part of an Agile engineering or development team
- Strong understanding of object-oriented principles with an ability to write clean code
- Strong experience working with a relational database and/or NoSQL database
- Strong experience with CI/CD pipelines with Jenkins or similar; Git/GitHub; Artifactory
- Proven skills in high availability and scalability design, as well as performance monitoring
- Experience developing and implementing API service architecture
- Experience in working in a cloud environment such as AWS, GCP or Azure.
- Understanding of messaging systems like MQ, Rabbit MQ, Kafka, or Kinesis.
- Strong experience of developing multi-threaded and synchronization application
- Build secure web applications with user authentication
- Understanding of software testing principles and methodologies
- Fullstack Academy, General Assembly or comparable programs may adequately a non-CS Bachelor’s Degree
#LI-MF1 #BI-Remote #Remote
What are you waiting for? Apply today!
The same way we treat our employees is how we treat all applicants – with respect. Discover Financial Services is an equal opportunity employer (EEO is the law). We thrive on diversity & inclusion. You will be treated fairly throughout our recruiting process and without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, or veteran status in consideration for a career at Discover.