**Job#: 2063761**
**Job Description:**
A Platform Software Engineer is a versatile developer with expertise in Java or Python and a strong foundation in cloud platforms to build and manage applications at scale. Generally, platform engineers fall into two categories: backend engineers, who design and implement microservices with robust APIs, and full-stack engineers, who deliver native UI/UX solutions and develop frameworks and services to enable an enterprise data platform. With a solid understanding of the SDLC and hands-on experience in Git and CI/CD, platform engineers can independently design, code, test, and release features to production efficiently.
**Key Responsibilities**
- **Design and Build Data Pipelines:** Architect, develop, and maintain scalable data pipelines and microservices that support real-time and batch processing on GCP.
- **Service-Oriented Architecture (SOA) and Microservices:** Design and implement SOA and microservices-based architectures to ensure modular, flexible, and maintainable data solutions.
- **Full-Stack Integration:** Leverage your full-stack expertise to contribute to the seamless integration of front-end and back-end components, ensuring robust data access and UI-driven data exploration.
- **Data Ingestion and Integration:** Lead the ingestion and integration of data from various sources into the data platform, ensuring data is standardized and optimized for analytics.
- **GCP Data Solutions:** Utilize GCP services (BigQuery, Dataflow, Pub/Sub, Cloud Functions, etc.) to build and manage data platforms that meet business needs.
- **Data Governance and Security:** Implement and manage data governance, access controls, and security best practices while leveraging GCP's native row- and column-level security features.
- **Performance Optimization:** Continuously monitor and improve the performance, scalability, and efficiency of data pipelines and storage solutions.
- **Collaboration and Best Practices:** Work closely with data architects, software engineers, and cross-functional teams to define best practices, design patterns, and frameworks for cloud data engineering.
- **Automation and Reliability:** Automate data platform processes to enhance reliability, reduce manual intervention, and improve operational efficiency.
**Required Skills**
**Programming Languages:** Proficient in Java, Angular, or any JavaScript technology.
**Cloud Platforms:** Experience with GCP tools like BigQuery, Dataflow, and Dataproc.
**Data Platform Technologies:** Ability to design and orchestrate platform services.
**Service-Oriented Architecture (SOA) and Microservices:** Strong understanding and application within a cloud data platform context.
**Full-Stack Development:** Knowledge of front-end (e.g., React, Node.js) and back-end technologies.
**API Development:** Experience in designing and developing RESTful APIs.
**Testing:** Implement robust unit and functional tests.
**Database Management:** Experience with relational (e.g., PostgreSQL, MySQL) and NoSQL databases, including columnar databases like BigQuery.
**Data Governance and Security:** Understanding of data governance frameworks and implementation of RBAC, encryption, and data masking.
**CI/CD and Automation:** Familiarity with CI/CD pipelines, Infrastructure as Code (IaC) tools like Terraform, and automation frameworks.
**Version Control:** Manage code changes with GitHub.
**SDLC Best Practices:** Adherence to