Full Job Description
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
We embrace change and evolution, both in our staff and systems. We are building new payment systems that allows us to utilize modern technologies (Cloud, Big Data, Open Source, Event driven real time processing) and approaches to delivery (Scaled Agile, CI/CD, TDD + BDD) that will enable us to produce software and systems to support our business and adapt to change within the fast paced FinTech world.
We want you to love where you work and thrive in your career. Our culture inspires innovation, teamwork, and growth, so we can make a positive impact on millions of people's lives.
We are looking for multiple experienced full stack Developer’s/ Engineer’s in the US. The successful candidate(s) will be primarily focused on supporting and guiding the team during all phases of the development life cycle to develop and maintain full stack solutions to fit business needs. Full stack solutions require one or more of the following: front-end (user interfaces), back-end (APIs), database and DevOps development. Works directly with business partners to understand business requirements. Works independently or with own team to innovate on and advocate for best practices within the team. Designs complex solutions and leads them from inception to production within the agile team.
What You’ll Do
Develop and implement quality engineering solutions that generally impact multiple components / processes. Typically assigned complex undertakings at a domain level that require expert knowledge of technology solutions
Establish strong partnership with architecture, software engineering/development, quality engineers and DevOps to enable product quality aspects within CI/CD delivery model which delivers high quality products
Be a specialist in quality and understands quality methodologies and frameworks to enable full automated validation
Provide technical and working solutions to reoccurring complex problems and is able to provide direction and recommend tooling to eliminate any manual activity and inefficiencies in delivery practices
Hands on experience in coding, individual contributor in performing proof of concepts on tools and technologies in order to provide working prototypes and feasibility of technical solutions
Develop best practices, procedures and enable continuous improvement
Defining automated solutions for monitoring and dash-boarding
Provide technical expertise to system architecture, Devops and delivery efficiency, and recommend optimal strategies for various products and applications focused on deliveries at high quality standards
Implement quality engineering activities that generally impact multiple components / processes, work on own and possibly other teams. Typically assigned highly complex, and high-risk undertakings that require expert knowledge of technology solution, coding languages and regularly require the application of independent judgement and creativity
Ability to evaluate and select automation to overcome manual activity in the delivery process from scoping till production, including functional and performance engineering tools for different products and applications.
Work with the other senior team members to enhance coding standards and ensure team adherence.
Analyze delivery practices, identify areas of improvements, recommend and implement tools and practices for improvements
Provide technical guidance, perform proof of concept for automation
Provide technical guidance to the scrum team.
Innovates on and advocates for best practices and improved team processes; mentors junior team members.
Supports live systems to ensure business continuity.
Provide mentorship to junior members of the team.
Help troubleshoot pipeline and environment issues.
Promote a culture of continuous improvement by looking for opportunities to enhance our processes and standards.
Time spent supporting team task and activities
Estimation of development effort, in combination with the scrum team
Working with the QA group to ensure that the code meets the functional Test requirements
Develop and maintain full stack solutions to fit business needs ― full stack solutions require one or more of the following: front-end (user interfaces), back-end (APIs), database and DevOps development.
Work directly with business partners to understand business requirements. Work independently or with own team to innovate and advocate for best practices within the team.
Design complex solutions and lead them from inception to production within the Agile team.
How You’ll Do It
Develop and maintain complex front-ends focused on user experience.
Develop and maintain back-end systems.
Work with key stakeholders to design complex solutions and lead from inception to production.
Create and maintain DevOps processes, application infrastructure, and utilize cloud services (including database systems and models).
Innovate on and advocate for best practices and improved team processes.
Mentor junior team members.
Support live systems to ensure business continuity.
Our Tech Stack:
React, AngularJS, React Testing Library, Cypress, Test Café, Cross Browser Testing, Protractor, Storybook, NodeJS, Express, Okta, Spring Framework.
Jenkins, GitHub, Nexus, Rabbit, Gemfire
PCF, Linux, AWS, VMware
Restful API’s and microservice architecture
Cucumber, Java, JUnit
CI/CD Pipeline Automation using Jenkins
Appium – Mobile automation
PaaS (e.g. Pivotal Cloud Foundry)
Behaviour Driven Development (BDD)
Apache Geode (GemFire)
Working in distributed teams
Apache Storm, Kafka, HBase (Highly Available variant), Hive (Server 2), HDFS
Cluster management (Zookeeper) and administration
UNIX/Linux (command line and shell scripting)
IntelliJ, Eclipse or Spring Tool Suite (STS)
JSON processing and validation
Test Driven Development (JUnit)
Qualifications You’ll Need
Bachelor’s degree in information technology or related field
6+ years of experience in computer science, information technology or related field
In lieu of degree, 8+ years of experience in computer science, information technology or related field
Bonus Points If You Have
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
Full Stack Academy, General Assembly or comparable programs may adequately supplement a non-CS Bachelor’s degree
6+ years of experience in Computer Science, Information Technology or related field, ideally in a frontend and backend application development environment
Self-motivated, Team motivator and Team player
Awareness of emerging trends in software engineering
Belief that empowered individuals make great teammates
Applied knowledge of Kanban, Agile Scrum and SAFe.
Exposure to modern software development practices including but not restricted to delivering Single page applications, Restful APIs, microservice technology, PaaS, Event Processing
Clear and effective written and verbal English
Has been involved in and implemented business critical projects of large scope and technical complexity
Ability to prepare and communicate high level application designs and concepts to management and peers
Must possess the judgement to plan and accomplish goals with minimal supervision
This position will require the candidate to perform a wide variety of tasks; wide degree of creativity and flexibility with regard to technology is expected
Think beyond the application/service, at an architectural level to enable faster delivery
Identify and propose improvements for quality deliverables
Should be able to carry out POCs(proof of concepts) of solutions for improvements
#LI-MF1 #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.