Job Summary:
We seek a highly skilled Full Stack Developer to join our technology team. This role will be critical in developing and maintaining our complete suite of products, including a Church Management system, Android/iOS mobile apps, USSD, payment rails and related cloud services. The ideal candidate will have extensive experience in both frontend and backend technologies, with a strong emphasis on Django, Next.js, PostgreSQL, AWS, and Docker. You will work closely with our mobile, backend, and frontend developers to ensure seamless functionality across all platforms.
Key Responsibilities:
- Full Stack Development:
- Design, develop, and maintain scalable web applications using Django for the backend and Next.js for the frontend.
- Collaborate with the mobile development team to ensure smooth integration between the mobile apps and the CRM tool.
- Contribute to developing APIs consumed by both the CRM and mobile apps.
- Backend Development (Django & PostgreSQL):
- Design and implement robust RESTful APIs using Django Rest Framework (DRF).
- Manage and optimize PostgreSQL databases for scalability, performance, and security.
- Implement user authentication, role-based access control, and other security best practices.
- Frontend Development (Next.js):
- Develop and maintain the CRM tool’s front end using Next.js.
- Ensure a responsive and user-friendly interface for church administrators to manage membership, attendance, and finances.
- Implement reusable components and front-end optimization techniques to improve user experience.
- Cloud Infrastructure (AWS):
- Deploy and manage web applications on AWS infrastructure (EC2, S3, RDS, Lambda, etc.).
- Set up and manage CI/CD pipelines using AWS and Docker for seamless deployment across multiple environments.
- Ensure high availability, fault tolerance, and security in a cloud environment.
- Containerization (Docker):
- Utilize Docker for containerization of applications, ensuring consistent environments for development, testing, and production.
- Manage Docker images, containers, and orchestration using AWS tools like ECS or Kubernetes.
- Collaboration & Leadership:
- Work closely with the mobile, backend, and frontend developers to ensure consistent and integrated product features.
- Participate in architectural design discussions and contribute to technology strategy.
- Provide mentorship and code reviews for junior developers.
Key Qualifications:
- Experience:
- At least 3 years of professional experience with Django and Python development.
- Strong experience with Next.js and modern frontend development (React.js).
- Proficiency in PostgreSQL database management and optimization.
- Solid experience with AWS cloud infrastructure, including but not limited to EC2, S3, RDS, and Lambda.
- Strong understanding of Docker for containerization and deploying applications.
- Skills:
- Excellent knowledge of RESTful API design and integration.
- Strong understanding of web technologies such as HTML5, CSS3, JavaScript/TypeScript, and responsive design.
- Experience with CI/CD pipelines and automated testing frameworks.
- Strong problem-solving skills and ability to work in a fast-paced, collaborative environment.
- Nice to Have:
- Experience with mobile app development and integration (iOS and Android).
- Familiarity with Kubernetes or other container orchestration tools.
- Familiarity with other cloud services or infrastructure as code tools like Terraform.
Key Attributes:
- Strong communication and collaboration skills.
- A passion for building high-quality software products.
- Ability to work autonomously and as part of a team.
- Highly organized and detail-oriented.
- Ability to balance multiple projects and tasks with minimal supervision.
Educational Requirements:
- Bachelor’s degree in Computer Science, Information Technology, Engineering, or a related field (or equivalent experience).
Benefits:
- Competitive salary and benefits package.
- Opportunity to work on impactful products for church communities.
- Flexible working hours and remote work opportunities.
- Access to the latest technology and tools in cloud and web development.
How to Apply:
To apply, please submit your resume, portfolio, and a cover letter detailing your experience and why you’re a great fit for this role.