Senior Software Developer
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
Discover Financial Services is looking for a Senior Software Developer to drive delivery in all aspects of software development. You will collaborate with product owners and your peers as part of a scrum team to execute on a broad range of projects related to our next generation platform for Portfolio Management and Software Delivery.
Responsible for analyzing, modifying, and supporting application software. Ensure quality code is delivered through continuous integration, development, and testing. Perform technical design, coding with test automation, support, and documentation of software application modifications.
Responsibilities
- Support technical initiatives and provide input into best practices to your team
- Oversee and review development activities of team members and contractors
- Ensure quality code is delivered through continuous integration, development and testing
- Act as SME for scrum team and ensure that all team members deliver quality code to meet expectations of the business
- Works closely with the Business utilizing agile methodology. Breaks down complex requirements into workable technical solutions. Assists in the evaluation of client area application software/systems requirements and processes (e.g., new features, enhancements or maintenance). Performs application software development, testing and implementation of efficient, cost effective application solutions. Completes technical design(s) as needed. Ensures that design(s) meets architecture standards and that the resulting system will be flexible, easily maintainable, high performing and integrates well with other related systems/components. Researches and evaluates alternative solutions and recommends the most efficient and cost effective solution for the systems design. Collaborates with other developers on code reviews and process enhancements. Completes unit and system testing prior to the start of any testing in PA region. Works with other internal IT teams to complete project activities, such as Infrastructure, Architecture and Database teams. Ensures that code reviews are performed and documented using the approved template. May provide direction and guidance to other systems analysts/developers. Analyzes and identifies technical areas of improvement within existing web applications.
- Ensures all projects and releases are appropriately tested and risks are mitigated. Ensures all projects have a detailed implementation and back-out plans, and are reviewed with all impacted parties in advance of scheduled releases. Continually looks for and implements ways to stabilize and improve the performance of the production environment.
- Identifies and executes opportunities to leverage agile/iterative/lean processes to deliver projects faster. Proposes ideas to better position our applications to support future business and technology initiatives. Finds ways to incorporate these ideas within planned project/release timelines. Incorporates and supports new technology/frameworks to support our continuous integration efforts.
- Adheres to regulatory, PDP, Change Management, and Internet Department processes and standards, ensuring all projects are compliant. Ensure any volume and capacity considerations are communicated during the design phase (or prior to committing to a Sprint). Documents software and performs related duties as assigned or requested. Actively contribute to best practices to support a strong software architecture. Reduce occurrence of vulnerabilities through proper secure coding practices and having a "Security First" Mindset. Follow proper handling of sensitive data per security guidelines. Ensures any volume and capacity considerations are communicated during the design phase (or prior to committing to a Sprint). Identifies efficient and viable alternatives to resource intensive requirements.
Required Skills
At a minimum, here’s what we need from you:
- Bachelor’s Degree in Information Technology, or relevant field
- 4+ years of Software Development or related experience
- In lieu of degree, 6+ years of Software Development or related experience
Desired Skills
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 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
#Remote
#BI-Remote
#LI-KE
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.