Opening for Python Developer in Cupertino, CA - Hybrid

Overview

Hybrid
Depends on Experience
Contract - W2
Contract - 6 Month(s)

Skills

Python Developer
web services
APIs
REST
JSON
OpenAPI
Swagger
Python
FastAPI
Flask
SQLAlchemy Core
Pydantic
Httpx
Alembic
Pytest
Ruff
Pyright
data modeling
SQL
Postgres
Git
Bug tracking
ETL
Data warehouses
Docker
Kubernetes
AWS
CI/CD
Vue/React
Javascript/Typescript
HTML/CSS

Job Details

Position: Python Developer

Location: Cupertino, CA

Duration: 6 months + to start

Key Qualifications

  • 6+ years of experience with designing and developing web services applications.
  • Strong experience with providing and consuming web services / APIs (REST, JSON, OpenAPI/Swagger)
  • Experience with modern Python and frameworks (FastAPI/Flask, SQLAlchemy Core, Pydantic, Httpx, Alembic, Pytest, Ruff, Pyright, or similar)
  • Strong experience with data modeling using relational databases, Writing and optimizing complex queries using SQL (Postgres)
  • Strong experience with Git, Bug tracking, and collaborating with a software team
  • Basic understanding of Containerization and DevOps processes (Docker, Kubernetes, AWS, CI/CD)
  • Basic understanding of Data Engineering a plus (ETL, Data warehouses)
  • Basic understanding of Frontend web a plus (Vue/React, Javascript/Typescript, HTML/CSS)
  • Strong debugging and diagnostic skills
  • Excellent communication and interpersonal skills
  • Excellent multi-tasking and organizational skills
  • Excellent problem solving and analytical thinking skills
  • Self-directed, analytical, and collaborative with a constant desire to learn, improve, and make things better
  • Experience working with a cross-disciplinary team of PMs, designers and other developers

Job Description

Under the supervision of a Places Technology Tech Lead, a software engineer is responsible for the following:

  • Estimate, plan, and implement software development work.
  • Work closely with product manager to gather requirements to build new modules or improve existing modules.
  • Evaluate, maintain and improve existing code base to ensure that it is properly structured and utilize software engineering best practices.
  • Troubleshoot, identify, and research reported issues, and have the ability to provide recommendations by comparing advantages and disadvantages of various solutions.
  • Stay on top of new technologies and tools, and adopt relevant ones to the team.
  • Participate in peer reviews, learn and apply software engineering best practices to your work.
  • Accountable for meeting assigned project objectives and timelines.
  • Set engineering vision and direction for existing and future applications.

Education/Experience

BS in Computer Science, Computer Engineering or relevant experience in corporate environment

Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.