Technical Engineering Manager

Purpose/Mission

We are looking for a passionate lead engineer and inspiring manager to shape the evolution of our IOT and telecom integration system as well as line manage a team of 5-7 software engineers. As key member of the digital team, this role will help deliver affordable solar power to emerging markets. This position offers a great opportunity to work alongside an elite team of engineers and business professionals and directly contribute to the success of a mission driven company with social and environmental impact. Candidates will get the opportunity to work in a diverse technology stack at scale.

Tech stack
Here is a summary of some of the tools:

Web frameworks: Rails, Flask, Django, FastAPI, VueJs, Angular
Storage: PGSQL, MySQL, Mongo, Cassandra, Redis
Distributed task: Celery, Sidekiq, RabbitMQ, Kafka
Integration protocols and frameworks: REST, SOAP, SIP, WebRTC
Source control: selfhosted for gitlab and CI/CD
Deployment: Linux, LXC, Docker, Kubernetes
Domain: Financial, Custom Call centre (VOIP), IOT, SMS, USSD, Mobile Money
Observability: Prometheus, Graylog, Kibana, Splunk, zabbix

Responsibilities

Define software engineering strategy and architecture with other leaders, fully responsible for the technical evolution of at least one software product.
Maintain knowledge on the latest technology trends and tools to ensure EEA software competitiveness.
Actively participate and understand the ROI of engineering efforts, understand the value creation and the priorities to the business.
Develop and own complex software that optimally uses resources to best meet customer needs.

Establishing clarity on business objectives for proper modelling of business processes.
Represent the technical team or assign someone in stakeholder conversations.
Ensure correct implementation and understanding of business logic in the team.

Put efficient development process in place with tools and metrics to stay on top of performance of the team.

Work closely with Product manager for resource planning and proper estimation
Ensure agile processes and other best practices are properly implemented.

Architectural evolution and tech debt management:

Code quality, compliance, and documentation
System performance at scale, reliability, observability, and high availability
System security compliance

Line management of 5-7 software engineers

Grow and develop individual software engineers, set goals and evaluate performance.
Recruit and hire software engineers including interns and freelancers.
Drive team culture.
Contract management with external developers in collaboration with Head of Software Engineering.

We believe that great managers:

Deliver ambitious results: As a high-performing and accountable leader, you create an environment enabling effective action and bold decisions which contribute to successful delivery of results.
Act with integrity: As an ethical leader you are honest, respectful, objective, and transparent. You create and build upon a foundation of trust and openness.
Inspire and mentor the team: As an inspirational leader you walk the talk. You empower and coach your team with trust and humility.
Are accessible: as an accessible leader, you develop and maintain deep connections with stakeholders through approachability and active listening.
Ensure diversity and inclusion: as an inclusive leader, you ensure diversity and foster a sense of belonging.

Experience And Skills
Required Skills:

Entrepreneurial and forward thinking with ability to recognize the impact of technology in business.
Working knowledge of good practices for computer and data security
At least 6 years of relevant experience, with 2 years of leading a software team of size 4-7.
Experience creating and maintaining scalable web applications in cloud context: distributed task processing, load balancing, containerization, clustering.
Good experience on high availability, observability, and structured logging
Web and application server (for python and ruby web apps) management experience (Linux, MySQL, Systemd, Apache, Nginx, etc)
Appreciation for detailed source code documentation and organized code structuring
Software deployment pipelines and best practice (CI/CD)
Excellent knowledge of computer algorithms, operating systems, and solid computer science fundamentals.
Good written and verbal communication skills in English

Desired Skills:

Strong software engineering and architectural patterns background (MVC, MVP, CQRS, DDD, SOLID, hexagonal, Microservices)
Knowledge of key components and dependencies used in current system: ActiveAdmin, Grape, Sidekiq, Rspec, Searchd.
Knowledge of containerization and container orchestration is a strong advantage.
Good knowledge of web application security
Knowledge of Amazon Web Services (AWS) and its services, such as, but not limited to, EC2, RDS, EBS, S3, Lambda functions.
Working knowledge of good practices for computer and data security
Experience with git and GitLab based source code management.

Qualifications:

Bachelors or Masters in a relevant engineering discipline (Computer Engineering, Software Engineering, Computer Science)

Language(s):

English
French is a plus

Apply via :

jobs.engie.com