ENGIE is a leading global energy company that builds its businesses around a model based on responsible growth to take on energy transition challenges. We provide individuals, cities and businesses innovative solutions based on our expertise in 4 key sectors: independent power production, natural gas, renewable energy and energy efficiency services to a low-carbon economy: access to sustainable energy, climate-change mitigation and adaptation and the rational use of resources.
Job Purpose/Mission
- We are looking for a talented, self-starting software engineer to join the digital team to 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.
Responsibilities
- Contribute to the bi-weekly software planning sessions, together with product managers and engineers to discuss delivery time estimates, risks and key practical considerations (such as technical debt, feasibility at scale ….)
- Take requirements and deliver a complete solution subject to all engineering best practices, timeline considerations and potential dependencies in the software with minimal to no supervision.
- Develop complex software that optimally uses resources to best meet customer needs.
- Participate and contribute to architectural discussion on important areas of software that impact performance and reliability of our software. Identify and communicate risk in approaches or implementation details, assumptions, etc...
- Mentor junior engineers and provide technical guidance
- provide support where engineering intervention is required (e.g due to bugs or performance problems, on-call)
Experience And Skills
Required:
- At least 3 years of relevant experience
- Programming language proficiency in Ruby and mastery of Rails framework
- Good knowledge of object relational mappers (and their implementation design patterns), No SQL, Mysql and storage options
- Strong knowledge of design patterns and OOP practices, TDD
- Strong API development and documentation experience
- Experience using observability and monitoring tools
- Working knowledge of good practices for computer and data security
- Experience with git: GitHub/Gitlab based source code management and deployment pipelines and best practice (CI/CD)
- Excellent written and verbal communication skills in English
Desired:
- Javascript and typescript proficiency with strong knowledge of one JS framework
- HTML4/5, CSS3, AJAX, Bootstrap along with strong knowledge of DOM
- Strong software engineering and architectural patterns background (MVC, MVP, CQRS, DDD, SOLID, hexagonal, Microservices)
- Experience creating and maintaining scalable web applications in cloud context: elastic cache, distributed task processing, load balancing, containerization, clustering
- Good experience on high availability, observability and structured logging
- API design (REST, GraphQL,Apollo...)
- Knowledge of container and container orchestration
- Web and application Server backend management is a strong advantage and basic Linux server system administration.
- Good knowledge of web application security with standards such as OWASP
- Knowledge of Amazon Web Services (AWS) and its services, such as, but not limited to, EC2 ,RDS, EBS, S3, Lambda functions
Qualifications :
- Bachelors or Masters in a relevant engineering discipline (Computer Engineering, Software Engineering, Computer Science)
Method of Application
Signup to view application details.
Signup Now