Role Overview
As a Software Engineer, you'll build the applications and infrastructure that bring our data and ML capabilities to life. You'll develop user-facing applications, APIs, and maintain the deployment infrastructure that supports our data and ML platforms.
Key Responsibilities
* Application Development
* Build and maintain microservices and web applications
* Develop REST APIs for internal and external consumption
* Implement authentication, authorization, and security best practices
* Write clean, testable, and maintainable code
* Frontend Development
* Create user interfaces using modern JS frameworks for complex applications (React, Vue, Angular)
* Build rapid prototypes and dashboards (d3js, plotly)
* Implement responsive design and user experience best practices
* Integrate frontend applications with backend APIs
* Infrastructure & DevOps
* Maintain CI/CD pipelines using GitLab workflows or GitHub Actions
* Deploy applications using Cloud Run and containerization
* Manage infrastructure using Terraform (minimal, focused scope)
* Monitor application performance and reliability
* System Integration
* Integrate ML models and APIs into business applications
* Build data connectors and ETL utilities as needed
* Implement system monitoring and alerting
* Support application troubleshooting and maintenance
Required Technical Skills
* Backend Development: Python, FastAPI, REST APIs
* Frontend Development: React, VueJS, JavaScript/TypeScript, HTML/CSS (Tailwind, Shadcn)
* Cloud Platforms: Google Cloud Platform, Cloud Run, GKE
* DevOps: CI/CD, Git workflows, basic infrastructure management
* Databases: SQL & NoSQL, experience with cloud databases (Cloud SQL, Spanner, Firestore)
Nice-to-Have Skills
* Experience with Infrastructure as Code (Terraform)
* Knowledge of Kubernetes and container orchestration
* Familiarity with monitoring tools (Prometheus, Grafana)
* Experience with mobile app development
* Background in data visualization libraries, Plotly)
Experience Level
* 3-5 years of full-stack or backend development experience
* Strong Python programming skills
* Experience with cloud application deployment
* Familiarity with modern web development practices
Growth Opportunities
* Technical: Full-stack expertise, system architecture, cloud-native development
* Leadership: Lead application development projects, mentor developers
* Specialization: Focus on frontend, backend, or infrastructure specialization
Collaboration
* Partner with ML Engineers to integrate ML capabilities into applications
* Work with Data Platform Engineers to build data-driven applications
* Collaborate with business stakeholders on application requirements and user experience