Principal Software Engineer - Streaming Data
Discover. A brighter future.
With Discover, you’ll have the chance to make a difference at one of the world’s leading digital banking and payments companies. From Day 1, you’ll do meaningful work you’re passionate about, with the support and resources you need for success. We value what makes each employee unique and provide a collaborative, team-based culture that gives everyone an opportunity to shine. Be the reason millions of people find a brighter financial future, while building the future you want, here at Discover.
Job Description
As a Principal Software Engineer – Streaming Data, you will provide senior level engineering leadership to build products that will support our streaming data pipelines and other real-time based solutions. You will be on the cutting edge of finding and integrating new technologies/platforms to be used by a large community of companywide engineers. We are looking for a talented individual that is strong technically, creative, and can work across many new technologies. As a principal, you will be expected to lead the R&D of new solutions, influence others and must be able to operate without prescriptive directives from management.
Some examples of initiatives you will work on include building out our Change Data Capture platform, Kafka/KSQL DB, and developing our real time data transformation/consumption frameworks. The products your team develops mush have user experience top of mind as we strive to create products that bring delight and efficiencies to our users. You will work with technologies such as Java, Python, Spark & Spark streaming APIs, SQL, Kafka, Qlik Replicate, Snowflake, AWS/Google Cloud services and CI/CD tools.
Responsibilities
- Develop data driven solutions utilizing current and next generation technologies to meet evolving business needs.
- Ability to quickly identify an opportunity and recommend possible technical solutions.
- Strong desire and capability to automate EVERYTHING
- Utilize multiple development languages/tools such as Qlik Replicate, Python, Java and SQL to build prototypes and evaluate results for effectiveness and feasibility.
- Operationalize open source data-analytic tools for enterprise use.
- Utilize tools available to you across AWS and Google Services
- Develop real-time data ingestion and stream-analytic solutions leveraging technologies such as Kafka, Apache Spark, Python, AWS/Google Services
- Custom Data pipeline development (Cloud and locally hosted)
- Provide support for deployed data applications and analytical models by being a trusted advisor to Data Scientists and other data consumers by identifying data problems and guiding issue resolution with partner Data Engineers and source data providers.
- Provide subject matter expertise in the analysis, preparation of specifications and plans for the development of data processes.
- Ensure proper data governance policies are followed by implementing or validating Data Lineage, Quality checks, classification, etc.
- Develops and maintains complex front-ends with a focus on user experience
- Develops and maintains backend systems
- Uses holistic knowledge of all products in the team’s ecosystem to plan how new systems will be built and integrated
- 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 innovations; 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
Required Skills
- Bachelor's Degree in Information Technology, Business, or related field
- 8+ years of experience in Computer Science, Information Technology, or other related field
- In lieu of a degree, 10+ years of experience in Computer Science, Information Technology, or other related field
Desired Skills
- Deep level understanding and implementation experience across AWS Data Services such as Lambda, Kinesis, SQS/SNS, EMR, S3, Cloudwatch etc..
- Experience with ELK stack
- Snowflake MPP Database
- Deep level understanding and efficiency in the Hadoop technology stack
- Proficient in Spark application coding
- Expert in Java or Python development
- Expert level knowledge in SQL, and relational databases
- Strong in Unix / shell scripting
- Ab Initio and Front end development
- 7+ years of experience of being a lead engineer and able to coach/provide guidance to peer and junior engineers.
- Excellent written and verbal communication, presentation and professional speaking skills
- Must be respectfully influential to work within and across many different teams and senior level management.
- Develops and influence architectural solutions on your own
- Collaborative individual who excels in working within a team and with business partners identify, develop and deliver innovative data solutions
- Strong ability to build and leverage external relationships.
- Decision making abilities while gathering information and then put your decisions into action.
- Required at times to conduct educational classes/sessions to other engineers
#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.