Responsibilities
- Design, develop, and maintain software applications
- Write clean, scalable, and efficient code to build software solutions that meet user needs.
- Collaborate with cross-functional teams
- Work closely with product managers, designers, and engineers to deliver high-quality, citizen-centric products.
- Perform code reviews
- Ensure code quality and share knowledge to improve overall team performance.
- Debug and troubleshoot issues
- Identify and fix software defects and performance problems.
- Implement automated testing and continuous integration
- Maintain software reliability and stability using automated tests and CI/CD pipelines.
- Documentation
- Create and maintain technical documentation aligned with architectural standards.
- Stay updated on industry trends
- Continuously learn and apply new technologies and best practices to enhance products.
Key Experiences and Qualifications
Educational Background
- Bachelor’s degree or higher in Computer Science or a related field.
Professional Experience
- Minimum 5 years in Software Engineering roles.
- At least 3 years of experience leading small engineering teams.
Technical Expertise
Full-Stack Web and Mobile Development:
- Frontend & Backend: React, Node.js
- Mobile: React Native
- Bonus: Native Android and iOS experience
Cloud & Containerization:
- Proficiency with Docker and AWS services including:
- Fargate, ECS, Lambda, S3, Aurora, RDS
Databases:
- Strong experience with MySQL and PostgreSQL
Computer Science Fundamentals:
- Data structures, algorithms, programming
- Cloud computing principles
- Software design patterns
Backend Development:
- Expertise in authentication, middleware, application security
- API design and system integration
Problem-Solving Skills:
- Ability to decompose complex problems into manageable tasks
- Skilled in designing structured, actionable solutions that deliver results
Additional (Bonus) Skills
- Strong stakeholder management capabilities
- Knowledge of disaster recovery and business continuity planning