Job Openings Software Engineer

About the job Software Engineer

Responsibilities:
Full Stack Development
  • Design, develop, and maintain applications:
- Implement frontend applications using React and React Native.
- Implement and maintain backend services using Node.js and TypeScript (NestJS experience is a plus).
- Build and maintain RESTful APIs, integrating with AWS services, Redis, and databases such as MySQL and DynamoDB.
  • Perform code reviews: Ensure code quality and share knowledge with team members to improve overall team performance.
  • Debug and troubleshoot issues: Identify and resolve software defects and performance issues.
  • Implement automated testing and continuous integration: Ensure the reliability and stability of the software through automated tests and CI/CD pipelines.
  • Documentation: Create and document technical designs that are aligned with architectural guidelines.
  • Stay updated with the latest industry trends: Continuously learn and apply new technologies and best practices to improve our products.
DevOps & Software Delivery
  • Design, automate, and optimize CI/CD pipelines using GitLab to ensure smooth, reliable releases.
  • Implement automated build, test, and deployment processes for multiple environments.
  • Manage and monitor application releases, including rollbacks, backups, and troubleshooting.
  • Drive best practices for code quality, configuration management, and deployment strategies.
Cloud Infrastructure & Operations
  • Provision, configure, and manage cloud infrastructure (AWS) to support applications and services.
  • Use Terraform for infrastructure as code and automate cloud resource management.
  • Maintain cloud networking, security groups, load balancers, and other key infrastructure components.
  • Support Site Reliability Engineering (SRE) related operations including observability, monitoring, and disaster recovery readiness.
  • Ensure systems are secure, scalable, and cost-optimized.
Collaboration & Leadership
  • Participate in system architecture discussions and technical solutioning.
  • Mentor junior engineers through code reviews and best practice sharing.
  • Collaborate with product managers, QA, and security teams to deliver high-quality, reliable releases.

Required Skills and Experience:
Professional Experience:
  • At least 5 or more years of relevant experience in Software Engineering roles
  • At least 2 or more years of relevant DevOps, or cloud infrastructure roles.
Technical Expertise:
  • Strong proficiency in JavaScript/TypeScript, Node.js, and React (and/or React Native).
  • Experience building RESTful APIs.
  • Hands-on experience with AWS (Lambda, ECS/EKS, S3, API Gateway, CloudFront).
  • Familiarity with MySQL, DynamoDB, Redis, and AWS SQS or SNS.
  • Solid understanding of CI/CD concepts and best practices. Experience in the following will be advantageous.
- CI tools such as GitLab products or similar tools.
- Familiarity with Infrastructure provisioning / configuration tools such as Terraform and containerization technologies such as Docker.
- Working knowledge of web hosting configuration components (including firewalls, load balancers, web servers, app servers etc.)
  • Understanding of networking, load balancers, and firewalls in cloud contexts.
  • Experience writing automated tests and integrating testing into delivery pipelines.
Additional:
  • Experience with NestJS or other Node.js frameworks.
  • Knowledge of microservices and distributed system design.
  • Familiarity with disaster recovery and business continuity planning.
  • Prior experience in government or enterprise-scale projects.