MongoDB Backend Developer
An experienced MongoDB developer/DBA that will design and maintain MongoDB databases based on the business requirements while optimizing the performance, security, and availability of MongoDB clusters.
To create well-organized databases, candidate must be able to do a variety of tasks including:
- Design database systems. Database Developers’ main responsibility is to analyze the needs of an organization and produce an effective database system according to their needs and specifications. This includes collecting data, analyzing the data, designing algorithms, drawing flowcharts, and implementing code for the logic developed through the algorithms and flowcharts.
- Test databases. A database developer must be able to run performance testing procedures to ensure the proper operations of a database and to ensure that it’s error-free. If any errors are thrown when the code runs, they need to be corrected and the code needs to be re-tested. This involves troubleshooting any potential problems, creating and submitting test reports, and database improvement.
- Develop database documentation. As a database is developed, the database developer must write documentation about the system and put together an operational manual. The documentation must include information regarding changes or improvements to the database as they are implemented.
- Work with the front-end development team. Once the databases are ready, and the front-end development is complete, a database developer must work with the front-end development team to integrate the modules together. Once this is done, the integrated code must again be tested and any errors must be fixed
- Maintain and configure MongoDB instances
- Keep clear documentation of the database setup and architecture
- Write procedures for backup and disaster recovery
- Ensure that the databases achieve maximum performance and availability
- Design indexing strategies
- Configure, monitor, and deploy replica sets
- Upgrade databases through patches
- Create roles and users and set their permissions
- Experience designing systems that deal with large data sets and a huge volume of transactions
- Experience in optimizing insertions of large amounts of data
- Experience with Big Data solutions like Hadoop
- Experience with DevOps automation tools such as Puppet | Ansible | other
- Experience with Google Cloud Platform desirable
- Passionate about embracing new database technologies
- Demonstrate analytical, problem-solving, presentation, and interpersonal skills to handle various critical situations
- Exhibit strong problem-solving skills and communications skills to handle critical circumstances well
- Experience in developing scripts to automate frequent tasks
- Experience with sharded clusters
- Knowledge of best patterns and practices for designing document schemas
- Good grasp of MongoDB’s aggregation framework
- Experience with Node.js and express or MongoDB driver
- DevOps experience to support our database
- Experience with frontend frameworks like Angular
- B.S/M.S. in Computer Science or equivalent (Strong Computer Science fundamentals)