Senior DB Engineer (MongoDB)
Apply NowCompany: Diamondpick
Location: Charlotte, NC 28269
Description:
Job Description:
Desired Qualifications:
Roles and Responsibilities:
Project Environment:
- Senior DB Engineer (Charlotte)
- Responsible for designing creating database schemas and maintaining data structure for the system. Design and manage data model with MongoDB experience. Excellent analytical skills.
- Participate in moderately to highly complex initiatives and projects associated with the technology domain, including installation, upgrades, and deployment efforts
- Drive the design, illustration, and presentation of the data layer to technical leads and developers to ensure all system functional requirements are delivered
- Perform application validation, functional testing to ensure the system is performing as expected
- Help define and design low level testing specifications, TDD and BDD, to ensure software functions properly
- Present recommendations for resolving issues or escalate issues as needed to meet established service level agreements
- Collaborate with technology colleagues, internal partners, and stakeholders to deliver commitment for the product team
Desired Qualifications:
-
- 8+years of software Engineering experience, such as design, analysis, development, testing, and documentation of general modules or features of new or upgraded software systems and products.
- 5+years of hands-on experience designing data and database for systems using MongoDB and PostgreSQL databases
- 3+years of experience working with microservices and orchestrating services to process high volume transactions running on Openshift , PCF or equivalent.
- 3+years' experience working with software development and building systems from the ground up, adopting well-design patterns, best coding practices, automation, reusable modularization, test and business driven development, etc.
- 3+years' experience working in agile environment on 2-weeks sprint cycles, knowledgeable with agile ceremonies, scrum, Jira, Confluence, etc.
- Candidate must have hands-on experience designing database schemas, SQL scripts and developing new software using the current technology stack running on the cloud such as those mentioned in the Project Environment. This includes MongoDB, OBDC database like PostgreSQL, SQLServer databases, Microservice development, Kafka with AVRO, distributed processing orchestration on cloud (PCF &/or TKGI cloud) Java, Spring, Hibernate, JPA, Apigee, Orchestra, TDD, BDD, Angular, React, Circuit Breaker, Feature Toggle / Harness, Grafana, Apigee, Liquibase, Blue-Green deployment, Test Automation knowledge ( Junit, Karate, Cucumber, TDD, BDD), performance monitoring (App Dynamics,Grafana)
Roles and Responsibilities:
-
- Candidate must have excellent analytical skills to understand new functional requirements and participate in technical design sessions.
- Candidate will work with multiple scrum teams to build two separate new enterprise software applications
- Candidate will capture functional requirements and document solution designs
- Candidate will perform low level design to map data and create and maintain data schema for components and microservices
- Candidate will create and insert data objects into MongoDB or PostgreSQL databases to create condition for components to run.
- Candidate will work with DBAs to configure databases and leverage Liquibase to deploy updates in higher environments.
- Candidate must have hands-on experience working with new software development team adopting industry best practices, such as 15-factor methodology, feature toggle, circuit breaker, etc.
- Candidate is expected to define design data layer, write SQL scripts, design database configuration, and collaborate with peer developers to develop components and microservices.
- Candidate must be adept and nimble in adopting new technology
Project Environment:
-
- More than 80% of the team's capacity will focus on building the new enterprise software application.
- The system being built is highly complex in functionality and expected to process large transactions in extremely high volume.
- This application is designed for modularization, as components and microservices, and orchestration of these services will be based on configurable processing workflows.
- It will have MongoDB and PostgreSQL databases and run on Openshift.
- Components and microservices environment include Kafka, AVRO, Java, Spring, Hibernate, JPA, Orchestra, Apigee,
- Test automation is extremely important using Junit, Karate, Cucumber, TDD, BDD.
- High availability environment is with Circuit Breaker, Feature Toggle using Harness, Blue-Green deployment, Grafana, AppDynamics, Liquibase.
- Applications are continuously scanned for outdated software and vulnerabilities so attention to secure coding practices are extremely important.