Fullstack Engineer- Contract
Slang
What Success Looks Like
- Design and implement scalable Kotlin backend services following domain-driven design principles, with comprehensive error handling and testing
- Develop and maintain GraphQL APIs that efficiently serve both internal and external clients
- Build React/TypeScript frontend components that provide intuitive interfaces for restaurant staff and customers
- Create robust integrations with Twilio telephony services and Dialogflow conversational AI, handling edge cases and failure scenarios gracefully
- Design efficient Firestore data models that balance performance, cost, and maintainability
- Implement comprehensive observability including logging, metrics, tracing, and actionable alerting
- Deliver production-ready code with appropriate test coverage (unit, integration, and end-to-end tests)
- Participate actively in code reviews, providing constructive feedback and incorporating suggestions
- Document technical decisions, API contracts, and system architecture clearly
- Deploy containerized applications to Google Cloud Platform following cloud-native best practices
- Collaborate effectively with cross-functional teams to refine requirements and deliver features that meet business needs
- Contribute to technical design discussions and help establish coding standards and best practices
What you will Bring
- 3-5 years of professional software development experience with full stack applications
- Strong proficiency in at least one JVM language (Kotlin, Java, or Scala) with understanding of functional programming concepts
- Experience building and consuming RESTful or GraphQL APIs
- Hands-on experience with React and TypeScript for frontend development
- Familiarity with NoSQL databases and data modeling concepts
- Experience with containerization (Docker) and cloud platforms (AWS, GCP, or Azure)
- Strong understanding of software testing practices and test-driven development
- Excellent debugging and troubleshooting skills across the full stack
- Ability to work independently and manage time effectively in a remote environment
- Strong written and verbal communication skills for remote collaboration
- Available for 40 hours per week with 4+ hours daily overlap with EST
- Experience with Kotlin specifically and its idioms
- Familiarity with GraphQL schema design and implementation
- Experience with Google Cloud Platform services (Firestore, Cloud Functions, Pub/Sub)
- Knowledge of telephony systems (Twilio or similar) and webhook integrations
- Experience with conversational AI platforms (Dialogflow, Lex, or similar)
- Infrastructure as code experience with Terraform
- Understanding of event-driven architectures and distributed systems patterns
- Experience with observability tools and practices (structured logging, distributed tracing)
- Previous experience in a contractor or consultant role
- Interest in restaurant/hospitality technology domain
Core Responsibilities & Technical Standards
- Design and implement backend services using Kotlin and the JVM ecosystem (primary focus)
- Develop GraphQL queries and mutations for client-server communication
- Contribute to React frontend components and features as needed
- Create modular, testable code following domain-driven design principles
- Implement proper error handling, logging, and graceful degradation patterns
- Write comprehensive unit and integration tests across the stack
- Data Modeling and Storage
- Design and implement Firestore data models that optimize for performance and maintainability
- Create efficient data access patterns and queries
- Implement data migration scripts and schema evolution strategies
- Ensure data consistency and integrity across distributed systems
- Design GraphQL schemas that effectively represent domain models
- Telephony and AI Integrations
- Develop and maintain integrations with Twilio for voice and messaging capabilities
- Implement Dialogflow conversational flows and webhook handlers
- Create fault-tolerant communication between telephony providers and internal services
- Handle edge cases and error scenarios in telephony workflows
- Implement retry logic and circuit breaker patterns for external service calls
- Frontend Development (as needed)
- Implement React components using TypeScript
- Integrate frontend with GraphQL APIs
- Ensure responsive and accessible UI implementations
- Write unit tests for React components
- Collaborate with product team on user experience improvements
- Cloud Services Integration
- Develop containerized applications using Docker
- Deploy and manage services on Google Cloud Platform
- Ensure services follow cloud-native best practices for scalability and resilience
- Integrate with GCP services (Cloud Functions, Pub/Sub, etc.) as required
- Provision new infrastructure using Terraform as needed under the guidance of platform engineering
- Observability and Monitoring
- Implement comprehensive logging, metrics, and tracing
- Create dashboards and alerts for service health monitoring
- Develop diagnostic tools to aid in troubleshooting production issues
- Ensure all services provide actionable insights into their behavior and performance
- Follow Kotlin idioms and best practices for backend development
- Use TypeScript effectively with proper type safety for frontend work
- Use dependency injection and maintain loose coupling
- Write self-documenting code with meaningful variable and function names
- Maintain consistent code formatting using agreed-upon linter