What are the responsibilities and job description for the Data Engineer - Python position at AM Best Company?
Benefits Summary
- Flexible and hybrid work arrangements
- Paid time off/Paid company holidays
- Medical plan options/prescription drug plan
- Dental plan/vision plan options
- Flexible spending and health savings accounts
- 401(k) retirement savings plan with a Roth savings option and company matching contributions
- Educational assistance program
Overview
The Data Engineer is responsible for designing, building, and optimizing scalable data solutions to support a wide range of business needs. This role requires a strong ability to work both independently and collaboratively in a fast-paced, agile environment. The ideal candidate will engage with cross-functional teams to gather data requirements, propose enhancements to existing data pipelines and structures, and ensure the reliability and efficiency of data processes.
Responsibilities
• Focus on continued build out/improvement of the current data stores (Oracle, CEPH, and possibly MongoDB) including data access and persistence• Requirement of prior knowledge/experience with database concepts such as SQL tuning, indexes, views, stored procedures, etc• Proficient in fundamental algorithms and data structures. Server-side Python processes utilizing concurrency patterns with asyncio, mutli-processing, and threading. Also, comfortable working with Numpy, Pandas, Python collections, etc • Must handle API development using REST. Strong working knowledge of FastAPI, with a primary focus on mastering the REST protocol. Experience with gRPC and socket-based communication is a valuable plus• Mastery of typical software development life cycle and deployment processes. Experience with GIT, MS Azure DevOps, Artifactory, etc. Must be comfortable building CI/CD pipelines• Experienced in developing applications and managing systems on Red Hat Enterprise Linux (RHEL) environments
Qualifications
• Associate’s Degree preferred with 5 to 7 years demonstrated server-side development proficiency• Bachelor’s Degree preferred with 3 to 5 years demonstrated server-side development proficiency
Skills
• Programming Languages: Python (NumPy, Pandas, Oracle PL/SQL). Other non-interpreted languages like Java, C , Rust, etc. are a plus. Must be proficient in the intermediate-advanced level of the language (concurrency, memory management, etc.) • Design patterns: typical GOF patterns (Factory, Facade, Singleton, etc.) • Data structures: maps, lists, arrays, etc • SCM: solid Git proficiency, MS Azure DevOps (CI/CD) • SQL: proficiency with Oracle indexes, SQL tuning, views, stored procedures, and functions • OS: majority of the development is on Redhat Linux but should be comfortable with Windows. Some Unix shell scripting may be needed from time to time • API development: must have proficiency with HTTP REST with gRPC / sockets as a plus • Comfortable working iteratively in a dynamic, flexible environment • Strong self-management skills and with a focus on timely completion of tasks • Ability to converse with technical and non-technical groups