Senior Software Engineers Needed (We are hiring!)
MarketForce 360 is looking to recruit 2 stellar Senior Software Engineers with strong experience to join our fast-growing, Kenyan-based, VC-backed, B2B SaaS company; where we specialize in field sales and distribution automation for consumer brands in Africa and emerging markets, with the aim of solving the last mile distribution challenge.
We are looking to fill the following roles:
- Senior Front-end Engineer (User centric micro-frontends) – 1 position
- Senior Back-end Engineer (Containerized microservices) – 1 position
The Senior Software Engineers will be required to design and implement new system features, as well as modify and maintain existing systems for adaptation to business and/or technology changes. The Senior Software Engineer will engage directly with the management, product development teams, business development teams, and customers to ensure the successful design, development, and delivery of technology-based solutions.
He/she should be able to drive software change and release management processes, assisting with the overall maturity of the software development lifecycle. Ultimately, the top-notch Senior Software Engineer will ensure that software deliverables comply with quality standards and are completed on time.
Technical Requirements, Responsibilities and Mandatory Skills – Front-end Engineer
- Ability in the entire product development process, from discovery to delivery and monitoring of the user interactions.
- Natural inclination to always think MVP first.
- Sound grasp of technical constraints and their impact, and ability adjust the design approach taken accordingly.
- Experience leading user testing sessions and validating design efforts.
- Desire to work in a respectful, transparent, and collaborative work environment, following MarketForce’s company values, culture and ways of working.
- Constantly improving quality and performance of front-end codebases.
- Participating in peer code reviews, which is a great way to produce solid code and learn new things!
- Engaging in internal tech talks and other training. Got something interesting to teach us? Please share!
- Experience working with ES6
- Mastery of HTML
- Experience in CSS and SASS development is considered an asset.
- Knowledge of frontend frameworks AngularJs, VueJs or React
- Can prototype ideas quickly and iterate as many times as needed using tools such as Figma, Adobe XD, InVision, Sketch, UXPin, HTML/CSS/JS, etc.
Technical Requirements, Responsibilities and Mandatory Skills – Back-end Engineer
- Knowledge of applying object-oriented and functional programming styles to real-world software engineering problems.
- Experience with organizations migrating from a monolithic legacy deployment and release environment to a containerized deployment ecosystem
- Experience with Microservices Architecture and Container Technologies (ACS, Docker, Mesos, Kubernetes, etc.)
- Demonstrable understanding of high-quality coding and testing practices.
- Leveraging deep understanding and adoption of Agile software delivery techniques and technologies including Continuous Integration & Continuous Delivery (CI/CD).
- Developing solutions using a variety of technologies and tools to marry offline and cloud-based systems together.
- An appetite to learn new technologies and a drive for continual improvement.
- A keen interest in technology and self-improvement. Examples include having an active Github account or completion of relevant Coursera courses.
- Contributions to the technical community, either through blogs, internal workshops, meetups or conferences.
- Fluent in Python, GoLang or NodeJS
- Experience with GraphQL
- Experienced in Docker, Kubernetes
- Experienced in AWS will be considered an asset
- Has worked with OAuth2 or SAML
- Understands Microservice Design Patterns
- Has experience with caches (Redis/Memcache)
- NoSQL database (MongoDB/Cassandra/CouchDB)
Your Management Responsibilities
- Must ensure teams follow the correct procedures, policies and documentation requirements across project phases
- Task allocation and performance evaluation of team members
- Make presentations on project status, present weekly, monthly and annual reports to senior management
- Communicate with client teams and gather requirements, conduct regular team meetings and track project progress
- Provide an efficient working atmosphere to project teams and ensure objectives are met within a stipulated time.
- Foster teamwork and lead by example
- Participating in the organization-wide people initiatives
- Excellent written and oral communication skills; writing, publishing and conference-level presentation skills a plus
Preferred Additional Skills:
- Cloud Computing Experience GCP, AWS or Azure
- Has experience with CI/CD tools such as CircleCI, Jenkins
- Kafka or AWS Kinesis
- Experience with ELK
The preferred candidate should have a minimum of 5 years of relevant programming experience with experience in software engineering, and proof of related qualifications.
Compensation and Benefits:
- Competitive salary, with some allowances
- Participation in ESOP
- Partially remote working environment
How to Apply:
Please send your resume to email@example.com on or before Friday 26th June 2020, 5PM EAT. Only shortlisted candidates will be contacted.