Responsibilities
- Design and implement new features and improvements across ReactJS front-end and Python/FastAPI back-end systems.
- Create and maintain RESTful APIs with FastAPI, including validation, error handling, versioning, and OpenAPI documentation.
- Build responsive and accessible user interfaces with ReactJS that comply with Section 508 accessibility standards.
- Manage PostgreSQL data models, queries, migrations, and stored procedures with a focus on performance and data accuracy.
- Follow trunk-based development practices by frequently committing small changes directly to the main code branch.
- Engage in peer code reviews and use short-lived branches and feature flags for controlled feature delivery.
- Containerize applications using Docker to ensure consistent and reproducible builds.
- Deploy containerized services to AWS platforms such as ECS and EKS, leveraging EC2, S3, RDS, CloudWatch, and IAM.
- Develop and maintain automated testing suites for both back-end (using pytest or similar) and front-end (using Jest and React Testing Library).
- Ensure sufficient test coverage is achieved before merging code changes.
- Diagnose and fix software defects, performance bottlenecks, and security issues in production and development environments.
- Reduce technical debt through proactive code refactoring and system improvements.
- Produce and keep current technical documentation, including API specs, data models, architecture decisions, and onboarding guides.
Other
- Eligibility to obtain and retain a Public Trust Tier 2 security clearance is required.
- Must pass an FBI background check and fingerprinting administered by the U.S. Capitol Police.
- Frequent use of physical abilities such as sitting, standing, reaching, kneeling, and operating computers and office equipment.
- Close visual acuity is necessary due to extended computer screen use.
- Occasional lifting or moving of objects up to 15 pounds may be required.
- Tasks involve fine motor skills, particularly keyboard operation.
- Work is conducted in standard office environments with typical office equipment.
- Noise levels are moderate, consistent with office settings containing phones, printers, and general activity.
- Ability to work within confined spaces is necessary.
- Ability to remain seated at a computer workstation for prolonged durations is required.