Overview
- Experience: Min. 2 Years
- Min. Education level: Bachelor's Degree
- Specialism: IT or Computer Science / Software Engineering
--- External Advertisement ---
Vacancy Description
Eminence Outsourcing is seeking a Software Engineer/Developer Intern with real-world development experience who is looking to deepen their expertise in a structured, client-driven engineering environment.
Eminence Outsourcing is a Nairobi-based Business Process Outsourcing (BPO) and call center provider that specializes in customer support, back-office operations, lead generation, and AI-enabled CRM integrations to help startups and enterprises scale globally.
Key Responsibilities
- Lead the end-to-end development of assigned feature from the Senior Developers, from technical design through implementation, testing, and deployment.
- Contribute to system architecture discussions, proposing scalable, maintainable solutions aligned with project requirements.
- Design and build robust RESTful or GraphQL APIs consumed by front-end clients or third-party integrations.
- Optimise existing code for performance, readability, and scalability etc.
- Make and justify technology or library choices within the scope of your assigned work.
- Implement secure coding practices and contribute to security review discussions.
- Write comprehensive unit, integration, and end-to-end tests with high coverage as a standard practice, not an afterthought.
- Set up or maintain CI/CD pipelines to automate build, test, and deployment workflows.
- Deploy and manage application components on cloud infrastructure (AWS, GCP, or Azure), including containerised environments using Docker or Kubernetes.
- Monitor application health post-deployment using observability tools and respond to incidents with structured root-cause analysis.
- Conduct and lead code reviews, providing substantive, technically grounded feedback beyond surface-level corrections.
- Actively participate in sprint planning, story estimation, and backlog refinement, not just execution.
- Engage directly with project managers or client liaisons to clarify requirements and flag technical risks early.
- Produce high-quality technical documentation: architecture decision records, API specs, deployment runbooks, and post-mortems.
Requirements
- Bachelor’s degree (or higher) in Computer Science, Software Engineering, Information Technology, or a closely related technical discipline.
- Minimum 2 years of professional software development experience in a full-time role, contract position, or equivalent demonstrable work.
- Proven track record of delivering features or products in a team environment, with verifiable contributions (GitHub history, portfolio, or references).
- Experience working within an Agile or Scrum team with real sprint cycles, not just academic simulation.
- Strong proficiency in these backend languages (Python, Node.js, Java, Go, PhP) and frontend technology (React, Vue, or Angular, Typescript).
- Solid understanding of relational databases, schema design, indexing, query optimisation, and transactions, plus exposure to NoSQL systems.
- Experience designing and consuming REST or GraphQL APIs in production environments.
- Advanced Git proficiency feature branching strategies, rebasing, resolving complex merge conflicts, and managing pull request workflows.
- Hands-on experience with at least one cloud platform (AWS, GCP, or Azure), including compute, storage, and managed services.
- Working knowledge of Docker; experience with Kubernetes or container orchestration is a strong plus.
- Practical awareness of application security, input validation, authentication flows (OAuth/JWT), and OWASP top-10 vulnerabilities.
- Familiarity with monitoring and observability tools (e.g. Datadog, Grafana, Sentry, or CloudWatch). Soft skills & professional maturity
- Excellent written and verbal communication, able to write clear technical specs, lead discussions, and explain trade-offs to non-engineers.
- Strong sense of ownership and accountability, you treat assigned deliverables as your responsibility, not your manager’s.
- Adaptable under shifting priorities, comfortable navigating ambiguity in a client-facing outsourcing environment.
- Demonstrated ability to collaborate across time zones and with diverse, cross-functional teams.
- Growth mindset, actively seeks feedback, reflects on past work, and continuously raises the quality bar.
- Experience in a software outsourcing or consulting environment managing multiple client codebases simultaneously.
- Contributions to open-source projects with meaningful merged PRs.
- Familiarity with microservices architecture, event-driven systems, or message brokers like Kafka or RabbitMQ.
- Knowledge of system design principles, load balancing, caching strategies, horizontal scaling, and CAP theorem.
- Certification in a cloud platform (AWS Solutions Architect, Google Associate Cloud Engineer, etc.).
Not for you? Share with a friend on...
View more jobs at Eminence Outsourcing โ
---- External Advertisement ----