Apply📍 United States
🧭 Full-Time
💸 $163,282 - $192,262 per year
🔍 Software/Data Visualization
- 15+ years of professional software development or data engineering experience (12+ with a STEM B.S. or 10+ with a relevant Master's degree).
- Strong proficiency in Python and familiarity with Java and Bash scripting.
- Hands-on experience implementing database technologies, messaging systems, and stream computing software (e.g., PostgreSQL, PostGIS, MongoDB, DuckDB, KsqlDB, RabbitMQ).
- Experience with data fabric development using publish-subscribe models (e.g., Apache NiFi, Apache Pulsar, Apache Kafka and Kafka-based data service architecture).
- Proficiency with containerization technologies (e.g., Docker, Docker-Compose, RKE2, Kubernetes, and Microk8s).
- Experience with version control systems (e.g., Git), CI/CD tools (e.g., Jenkins), and collaborative development workflows.
- Strong knowledge of data modeling and database optimization techniques.
- Familiarity with data serialization languages (e.g., JSON, GeoJSON, YAML, XML).
- Excellent problem-solving and analytical skills that have been applied to high visibility, important data engineering projects.
- Strong communication skills and ability to lead the work of other engineers in a collaborative environment.
- Demonstrated experience in coordinating team activities, setting priorities, and managing tasks to ensure balanced workloads and effective team performance.
- Experience managing and mentoring development teams in an Agile environment.
- Ability to make effective architecture decisions and document them clearly.
- Must be a US Citizen and eligible to obtain and maintain a US Security Clearance.
- Develop and continuously improve a data service that underpins cloud-based applications.
- Support data and database modeling efforts.
- Contribute to the development and maintenance of reusable component libraries and shared codebase.
- Participate in the entire software development lifecycle, including requirement gathering, design, development, testing, and deployment, using an agile, iterative process.
- Collaborate with developers, designers, testers, project managers, product owners, and project sponsors to integrate the data service to end-user applications.
- Communicate tasking estimation and progress regularly to a development lead and product owner through appropriate tools.
- Ensure seamless integration between database and messaging systems and the frontend/UI they support.
- Ensure data quality, reliability, and performance through code reviews and effective testing strategies.
- Write high-quality code, applying best practices, coding standards, and design patterns.
- Team with other developers, fostering a culture of continuous learning and professional growth.
DockerLeadershipPostgreSQLPythonSoftware DevelopmentAgileBashDesign PatternsGitJavaJenkinsKafkaKubernetesMongoDBRabbitmqApache KafkaData engineeringData scienceCommunication SkillsAnalytical SkillsCI/CD
Posted 2024-09-11
Apply