Reference:
VAC-2974
Sector:
Telecommunications, Information Technology, Network / Data Centre Services, Investment Banking and Capital Markets
Rates:
Competitive
Town/City:
Porto
Type:
Contract
Closing Date:
26/09/2025
?? Cloud Data Engineer – Contract Opportunity (Hybrid, Porto , Portugal)
We are seeking an experienced Cloud Data Engineer (Contractor) to support a major transformation program, contributing to the design and delivery of scalable, reliable, and maintainable cloud data solutions.
What you’ll do:
Advise on data strategy, architecture, and implementation approaches.Design and build modern data pipelines on AWS (experience with Azure/GCP is a plus).Implement and optimize Lakehouse architectures (Iceberg preferred, Hudi/Delta beneficial).Develop and automate ETL processes, workflows, and orchestration (Airflow, Step Functions, AWS Workflow).Ensure high standards of reliability, automation, maintainability, and security.Support incident resolution and share best practices with internal teams.
Deliverables include:
Functional, optimized data pipelines aligned with business needs.Clear documentation of designs, implementations, and operations.Regular updates on progress, risks, and improvements.Knowledge transfer and mentoring of internal teams.
What we’re looking for:
3–5 years’ experience building pipelines on public cloud (AWS essential).Strong expertise in data solution architecture, ETL, BI, Big Data, ML/Analytics.Hands-on with Spark ecosystems, SQL, Python, CI/CD, Docker, DevOps/Agile.Experience with AWS services (Glue, Lambda, Step Functions, DynamoDB, Batch, Crawlers).Knowledge of Lakehouse architectures and optimization techniques.Familiarity with IaC (CloudFormation, Terraform) and cloud security fundamentals.Excellent collaboration and communication skills; fluent in English (French a plus).
Collaboration & Setup:
You’ll work alongside delivery managers, architects, developers, and analysts in a hybrid model (up to 2 remote days per week), participating in agile ceremonies and knowledge-sharing sessions.
![]() | ![]() | ![]() |
