Principal Application Engineer (Full Stack)


Location: Riverwoods, Illinois

Job Type: Not Specified


The most difficult thing is the decision to act, the rest is merely tenacity.
- Amelia Earhart

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

The Principal Software Engineer will perform system analysis, design solutions, develop and maintain full stack solutions to fit business needs. Works closely with Architects and Product Owners to understand business requirements, innovates and advocates for best practices within the team, and collaborates on them across the enterprise. Guides team in implementation of solutions from inception to production and help them ensure operational excellence.

Come join us in a rewarding and fast-paced position as a Principal Software Engineer in the Rewards Department. Our department supports Rewards platform at Discover, which is key to supporting the business growth of the Discover Card portfolio. We are in the journey of going cloud native with event driven and distributed architecture. You will be helping us to drive with modern agile practices like TDD and XP

What you will do

  • Delivers technology solutions that support our business goals: Partner with management, architects, and product owners to understand requirements, evaluating the features to prepare applications specifications into workable technical solutions.
  • Enhance Operating Model by demonstrating a high-level of initiative, ability to work with all levels of management and within a scrum team as a senior technical leader/developer.
  • Assists with the growth of others on the team within a challenging environment while promoting DFS cultural behaviors and technical proficiencies based on our latest standards and strategies.
  • Actively contribute to the department's developer community to support technical initiatives and provide input into best practices.
  • Maintains highly available systems. Ensures all projects and releases are appropriately tested and risks are mitigated
  • Deliver on all product development phases from planning, application development, release, and support.
  • Drive product quality through paired programming and test-driven development.
  • Ensure applications meet security, high availability, and maintainability requirements.
  • Develop application code using languages such as React, and Java frameworks.
  • Develop API endpoints to support internal and external requests.
  • Develop / maintain CICD pipeline to build, test, and deploy application artifacts.

Minimum Qualifications

  • Bachelors – Computer Science or related

  • 6+ Years -- Information Technology, (Software) Engineering, or related

  • Internal applicants only: technical proficiency rating of proficient on the Dreyfus engineering scale

Bonus Points/Nice to have

  • Knowledge of React, Redux, and Java application frameworks
  • Experience with React apps and REST Web Services development
  • Expertise in domain driven design, test automation and capable of forming a deep understanding of our underlying frameworks and languages
  • Understanding of REST Web Services, JSON and Design Patterns using various technologies
  • Experience with JavaScript, Node.js, GitHub, and Git Command line is a plus
  • Strong debugging skills with the ability to reach out and work with peers to solve complex problems
  • 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 with CI/CD pipelines with Jenkins or similar; Git/GitHub; Artifactory
  • Strong experience working with a relational database and NoSQL database
  • Proven skills in high availability and scalability design, as well as performance monitoring
  • Experience in working in a cloud environment such as OCP, AWS, GCP or Azure.
  • Understanding of messaging systems like MQ, Kafka, or Kinesis.
  • Strong experience of developing multi-threaded and synchronization application
  • Experience building secure web applications with user authentication
  • Understanding of software testing principles and methodologies

External applicants will be required to perform a technical interview.

#LI-LJ1 #Remote #BI-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.

You’ve got this!