Senior React/TypeScript Developer & AWS Cloud Architect
*Project Overview*
We are looking for an experienced Full-Stack/Cloud Developer to build a public-facing marketplace website and architect the underlying AWS infrastructure. We have already developed the backend (a private Spring Boot API) and a client admin console (Spring Boot Thymeleaf).
This is a phased project. *Phase 1 (Immediate):* Develop the public website and set up the AWS Dev environment for it. *Phase 2 (Future):* Expand the AWS infrastructure to Staging and Production environments to host the website, the Spring Boot API, the Admin Console, and the PostgreSQL database.
Please review the detailed requirements below.
*Section 1: Website Development (Public-Facing Marketplace)*
*Objective:* Develop a highly responsive, performant, and type-safe public website that consumes my existing Spring Boot API exclusively. The site will feature business listings, interactive maps, advanced filtering, and user submission flows.
*Required Technology Stack:*
- *Core Framework:* React.js with TypeScript (Component-based architecture for reusable UI elements like listings, maps, and filters).
- *State Management:* Redux Toolkit + RTK Query (Centralized store for search filters, auth, and listing data; RTK Query for efficient API caching/loading states and geospatial state management).
- *Styling:* Tailwind CSS + Headless UI (Utility-first CSS for rapid responsive design, marketplace UI patterns, and customizable map controls).
- *Build Tool:* Vite (For lightning-fast HMR, native ES module bundling, and fast initial loads).
- *Mapping Integration:* Google Maps Platform + @react-google-maps/api (For drawing search radius circles, click-to-place listing submissions, and geolocation-based initial map positioning).
- *Form Management:* React Hook Form + Zod (Performant form handling for business submissions, Zod for schema validation like business hours/coordinates, integrated with Dropzone for image uploads).
- *API Communication:* Axios + OpenAPI Generator (Type-safe API calls to the Spring Boot backend. You will generate API types directly from my OpenAPI spec via Springdoc. Must include automatic retry logic for geospatial queries).
- *Testing Stack:*
- _Unit Tests:_ Vitest (Component logic, custom hooks).
- _Integration Tests:_ React Testing Library (Listing filters, map interactions).
- _E2E Tests:_ Cypress (User journey from search to listing submission).
*Deliverables for Section 1:*
- Fully functional, responsive React/TypeScript frontend application.
- Comprehensive test suites (Unit, Integration, E2E) with high coverage.
- Clean, well-documented source code adhering to modern React best practices.
*Section 2: AWS (Dev) Setup for Website*
*Objective:* Design and implement the initial AWS Dev environment specifically tailored for hosting, testing, and continuous deployment of the React website.
*Requirements:*
- *Hosting & CDN:* Set up Amazon S3 for static website hosting and Amazon CloudFront for global content delivery and caching.
- *DNS & SSL:* Configure Amazon Route 53 for DNS management and AWS Certificate Manager (ACM) for SSL/TLS certificates (HTTPS).
- *CI/CD Pipeline:* Implement an automated CI/CD pipeline (e.g., GitHub Actions, GitLab CI, or AWS CodePipeline) that triggers on git pushes to:
1. Run linting and tests (Vitest/Cypress).
2. Build the Vite production bundle.
3. Deploy the artifacts to the S3 bucket and invalidate the CloudFront cache.
- *Infrastructure as Code (IaC):* All Dev infrastructure must be provisioned using IaC (Terraform or AWS CDK preferred) to ensure reproducibility.
- *Security:* Implement least-privilege IAM roles for the CI/CD deployment user and secure the S3 bucket via Origin Access Control (OAC).
*Deliverables for Section 2:*
- Fully deployed and accessible Dev environment URL for the website.
- Working CI/CD pipeline configuration files.
- IaC codebase for the Dev environment.
- Brief documentation on how to manage the Dev environment and pipeline.
*Section 3: AWS (Staging/Prod) Setup for Website and 2 Spring Boot Applications*
*Objective:* Architect and deploy the complete Staging and Production environments. This phase expands the infrastructure to host the entire ecosystem: the React Website, the Spring Boot API, the Spring Boot Thymeleaf Admin Console, and the PostgreSQL database. _(Note: The Spring Boot apps are already developed; this phase is strictly for infrastructure, deployment, and O&M setup)._
*Requirements:*
- *Networking & Security:*
- Design a secure VPC architecture with Public and Private subnets across multiple Availability Zones.
- Configure NAT Gateways, Security Groups, and Network ACLs.
- Implement AWS WAF (Web Application Firewall) for the public-facing endpoints.
- *Database (PostgreSQL):*
- Provision Amazon RDS for PostgreSQL.
- Configure automated backups, Multi-AZ deployment (for Prod), and parameter groups.
- Store DB credentials securely in AWS Secrets Manager.
- *Compute & Application Hosting:*
- Host the Spring Boot API and Admin Console using a managed container service (Amazon ECS Fargate).
- Set up Amazon Elastic Container Registry (ECR) to store Docker images for both Spring Boot applications.
- Configure Application Load Balancers (ALB) to route traffic to the appropriate backend services and handle SSL termination.
- *Monitoring & O&M:*
- Configure Amazon CloudWatch for centralized logging, metrics, and alarms.
- Set up automated scaling policies (Auto Scaling) based on CPU/Memory or request count.
- Implement AWS X-Ray or similar for distributed tracing between the frontend, API, and database.
- *Infrastructure as Code (IaC):*
- Expand the existing IaC codebase to manage Staging and Prod environments, utilizing workspaces or separate state files to prevent cross-environment contamination.
*Deliverables for Section 3:*
- Fully operational Staging and Prod environments for all 3 applications and the database.
- Complete, modular IaC codebase covering the entire AWS architecture.
- Comprehensive architecture diagrams and an Operations & Maintenance (O&M) runbook (including backup/restore procedures, scaling instructions, and monitoring alerts).
Ideal Candidate Profile:
- *Expertise:* Proven experience in React/TypeScript (specifically with Redux Toolkit and Vite) and deep expertise in AWS Cloud Architecture.
- *AWS Certifications:* AWS Certified Solutions Architect or AWS Certified Developer preferred.
- *DevOps Skills:* Strong proficiency in Infrastructure as Code (Terraform/CDK), Docker, and CI/CD pipelines.
- *Communication:* Ability to explain architectural decisions clearly and provide proactive recommendations for cost-optimization and security.
Join us if you’re passionate about building innovative solutions at the intersection of front-end development and cloud architecture! This role offers a vibrant environment where your technical expertise will directly impact our digital growth trajectory while working on exciting projects that challenge your skills every day.
Pay: $55.00 - $80.00 per hour
Expected hours: No more than 30.0 per week
Benefits:
- Flexible schedule
Application Question(s):
- Are you open to being part of a very small team?
Experience:
- DevOps: 5 years (Preferred)
Work Location: Remote