-
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 integration frameworks 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 is 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