Job Description
Job Description
Position: Google Cloud Platform (GCP) Python Developer
We are seeking a highly skilled Google Cloud Platform (GCP) Python Developer to join our team. In this role, you will be responsible for designing, building, and maintaining distributed systems that enable asynchronous communication and event orchestration without central control. You will also be responsible for developing Python-based applications using Google Cloud Platform (GCP) SDKs, with a focus on building and deploying backend services.
Key Responsibilities:
- Design and develop distributed systems that support asynchronous communication and event orchestration without central control
- Utilize Python and GCP SDKs to build and deploy backend services
- Work with GCP services such as Pub Sub, Dataflow, Cloud Functions, and Cloud Run to develop robust and scalable solutions
- Familiarity with RPC-style APIs and ability to work with them under the hood
- Design and implement schemas for events using serialization formats such as Avro, Protobuf, and JSON
- Collaborate with cross-functional teams to understand business requirements and translate them into technical solutions
- Continuously monitor and optimize the performance of distributed systems
- Stay updated with industry trends and advancements in distributed systems and cloud technologies
Requirements:
- Bachelor's degree in Computer Science, Engineering, or a related field
- Minimum of 7 years of experience in developing distributed systems
- Strong understanding of distributed systems concepts and principles
- Hands-on experience with Python development and GCP SDKs
- Experience building and deploying backend services using GCP services such as Pub Sub, Dataflow, Cloud Functions, and Cloud Run
- Familiarity with RPC-style APIs and ability to work with them under the hood
- Knowledge of schema design and experience working with serialization formats such as Avro, Protobuf, and JSON
- Experience with event-driven architectures and event-driven design patterns
- Strong problem-solving skills and ability to troubleshoot complex issues in distributed systems
- Excellent communication and collaboration skills
- Ability to work in a fast-paced and dynamic environment
- Familiarity with Agile development methodologies is a plus
If you have a passion for building distributed systems and are excited about working with cutting-edge technologies, we want to hear from you!
