Jobs Career Advice Signup
X

Send this job to a friend

X

Did you notice an error or suspect this job is scam? Tell us.

  • Posted: Sep 27, 2024
    Deadline: Not specified
    • @gmail.com
    • @yahoo.com
    • @outlook.com
  • Never pay for any CBT, test or assessment as part of any recruitment process. When in doubt, contact us

    ENGIE is a leading world group that provides low-carbon energy. Our group is a global reference in low-carbon energy and services.
    Read more about this company

     

    Software Engineer (Cloud Native)

    Responsibilities  

    • Define software engineering strategy and architecture with other leaders, fully responsible for the technical evolution of at least one software product, responsible for the entire software development lifecycle (SDLC) from ideation to deployment 
    • Implement and optimize microservices and RESTful APIs to ensure scalability and ease of integration for cloud-based applications. 
    • Architect and implement solutions that cater to multi-tenant environments, ensuring tenant isolation, efficient resource utilization, and data security. 
    • Develop scalable data partitioning and tenant onboarding solutions to manage multiple tenants seamlessly while maintaining high performance. 
    • Ensure proper configuration and management of tenant-level security, quotas, and SLAs. 
    • Develop and deploy applications using Docker containers to ensure consistency across multiple environments (development, staging, production). 
    • Use Kubernetes to orchestrate containerized workloads, enabling horizontal scaling, high availability, and automated deployments in multi-tenant architectures. 
    • Manage and optimize Kubernetes clusters for tenant-aware scaling, load balancing, and service discovery. 
    • Build and maintain fully automated CI/CD pipelines (using tools like Jenkins, GitLab CI, or CircleCI) to enable continuous integration and continuous deployment across multiple environments. 
    • Integrate automated testing, including unit, integration, and end-to-end tests into CI/CD pipelines to ensure early detection of issues and smooth rollouts. 
    • Implement blue-green deployments, canary releases, and other progressive delivery techniques to reduce downtime and minimize risks during deployments in multi-tenant setups. 
    • Design, implement, and manage cloud infrastructure using AWS, Google Cloud, or Azure, ensuring the infrastructure supports the demands of multi-tenant applications. 
    • Implement infrastructure as code (IaC) using tools like Terraform or AWS CloudFormation to automate provisioning and scaling of infrastructure. 
    • Ensure that the cloud environment is configured for cost-efficiency, elasticity, and fault tolerance while maintaining strict adherence to security and compliance standards. 
    • Implement and manage monitoring and alerting systems (using tools like Prometheus, Grafana, Datadog, or New Relic) to track application performance, usage, and tenant-specific metrics. 
    • Proactively monitor and troubleshoot production issues, ensuring high availability and uptime for multi-tenant applications. 
    • Conduct root cause analysis on system failures or performance degradation and implement necessary optimizations or patches. 
    • Continuously optimize application performance to support the scalability demands of multiple tenants, ensuring low latency and high throughput. 
    • Collaborate with cross-functional teams, including DevOps, product management, QA, and other software engineers, to align on requirements, technical specifications, and deliverables. 
    • Participate in code reviews and provide constructive feedback to peers to improve overall code quality and team productivity. 
    • Stay up-to-date with the latest trends and technologies in cloud-native development, containerization, Kubernetes, and multi-tenant architecture. 

    Knowledge and skills    

    Experience:  

    • 5+ years of experience as a software engineer with a focus on cloud-native development. 
    • Proficiency in Python and Ruby web frameworks (e.g., Django, Flask, Ruby on Rails, Sinatra). 
    • Strong experience with Docker and Kubernetes for container orchestration in production environments. 
    • Experience building and maintaining CI/CD pipelines in a multi-tenant architecture. 
    • Strong knowledge of RESTful APIs, microservices architecture, and distributed systems. 
    • Cloud Platforms: Expertise in AWS, Google Cloud, or Azure, including services like EC2, Lambda, S3, RDS, etc. 
    • Version Control: Proficiency in Git and branching strategies for multi-tenant development. 
    • Infrastructure as Code (IaC): Experience with Terraform, AWS CloudFormation, or similar tools. 
    • Testing: Proficiency in automated testing frameworks (e.g., RSpec for Ruby, PyTest for Python) and integrating them into CI/CD pipelines. 
    • Monitoring: Experience with application performance monitoring (APM) tools (e.g., Prometheus, Datadog, New Relic). 
    • Strong problem-solving and analytical skills, with a passion for building scalable and reliable systems. 
    • Excellent written and verbal communication skills, with the ability to collaborate effectively across cross-functional teams. 
    • Ability to work in a fast-paced, agile development environment. 

    Nice to Have 

    • Experience with multi-tenant architecture in a SaaS environment. 
    • Familiarity with serverless architectures (e.g., AWS Lambda, Google Cloud Functions). 
    • Knowledge of GraphQL APIs and their integration with multi-tenant systems. 
    • Understanding of security best practices in cloud-native applications, including IAM roles, data encryption, and secrets management 

    Qualifications:  

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

    Language(s):   

    • English  
    • French is a plus  

    go to method of application »

    Software Engineer (Python)

    Responsibilities  

    • Participate in the 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 etc.  
    • Own initiative and complete it from start to finish, provide guidance to other engineers and deliver a complete solution subject to all engineering best practices, timeline considerations and potential dependencies in the software with no supervision.  
    • Represent technical team in business conversations in a range of scopes and work closely with stakeholders to deliver solutions which fit the needs of the business and provide fairly accurate effort estimates and risk assessment  
    • Participate in Peer-Review, identify and document technical debt and contribute to delivering high quality software solutions  
    • Participate and strongly 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, technical debt, assumptions, etc.  
    • Contribute to change of processes, adoption of best industry practices and mentor junior engineers and provide technical guidance  
    • Provide support where engineering intervention is required (e.g. due to bugs or performance problems) 

    Knowledge and skills    

    Experience:  

    • 5 years of practical experience in software engineering of which at least 2 years in senior or lead role  
    • Programming language proficiency in Python and front-end/JavaScript frameworks  
    • Proven track record of building quality software with TDD  
    • Strong knowledge of software engineering design and architectural patterns   
    • Experience creating and maintaining scalable web applications with high availability, observability and structured logging  
    • API design to scale in Python 
    • Good knowledge of object relational mappers and their implementation design patterns  
    • Appreciation for detailed source code documentation and organized code structuring  
    • Software deployment pipelines and best practice (CI/CD)  
    • Excellent knowledge of computer algorithms and solid computer science fundamentals  
    • Excellent written and verbal communication skills in English 

    Good to have experience   

    • Experience in developing large production grade web applications with python, java or Go 
    • Forward thinking with ability to recognize the impact of technology in business 
    • Strong foundation on distributed systems 
    • Knowledge of container orchestration using Kubernetes 
    • Server backend management experience (Linux, MySQL, Puma, Apache, Nginx, etc.) 
    • Good knowledge on application security 
    • 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 are preferred) 

    Language(s):   

    • English  
    • French is a plus  

    go to method of application »

    Quality Assurance Lead

    Responsibilities

    • Leadership & Team Management:
    • Lead, mentor, and grow a team of QA engineers, ensuring clear goals, performance tracking, and continuous improvement.
    • Oversee the recruitment, onboarding, and training of QA team members.
    • Foster a collaborative and proactive team culture focused on delivering high-quality software.
    • Quality Assurance Strategy:
    • Design and implement comprehensive QA strategies for multi-tenant web and mobile applications, covering functional, performance, security, and regression testing.
    • Ensure the creation and maintenance of detailed test plans, test cases, and test scripts.
    • Establish and monitor key QA metrics (e.g., defect rates, code coverage, test execution time, etc.) to track and improve software quality over time.
    • Test Automation:
    • Develop and maintain automated testing frameworks to ensure efficient regression testing and fast feedback in CI/CD pipelines.
    • Ensure appropriate levels of test coverage, including integration, API, and UI automation across both web and mobile platforms.
    • Identify and implement tools and frameworks for test automation that align with the needs of multi-tenant applications.
    • Manual and Exploratory Testing:
    • Manage manual testing efforts for complex or high-risk areas of the application that require human insight.
    • Perform exploratory testing to identify edge cases, usability issues, and unanticipated defects.
    • Collaboration & Communication:
    • Collaborate closely with developers, product managers, and DevOps to understand requirements, clarify acceptance criteria, and ensure the QA process is integrated into the development lifecycle.
    • Evaluation and/or authoring of UAT together with product managers and provide necessary support to business stakeholders.
    • Continuous Improvement:
    • Implement continuous testing practices to provide feedback on software quality early in the development cycle.
    • Stay updated with the latest QA methodologies, tools, and best practices, and integrate them into the team’s processes.
    • Work to reduce release cycle times by optimizing testing processes and increasing automation coverage.
    • At EEA, we have high expectations for our managers. Each manager plays a key role in creating an exceptional experience not only for our customers but for every person on our team. Our managers help EEA realize our ambitious goals while developing their own leadership skills and facilitating growth for their direct reports.

    We believe that great leaders:

    • 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.

    Knowledge and skills 

    Experience:

    • 5+ years of experience in software quality assurance, with at least 2+ years in a leadership role.
    • Experience with both web and mobile applications (iOS and Android) testing, including experience working with multi-tenant architectures.
    • Strong experience in automated testing frameworks (Selenium, Appium, Cypress, etc.).
    • Strong understanding of software testing methodologies, including functional, performance, and security testing.
    • Experience working with CI/CD pipelines and integrating automated testing into CI workflows (e.g., Jenkins, CircleCI, GitLab CI).
    • Experience in API testing using tools such as Postman, SoapUI, or similar.
    • Hands-on experience with version control systems like Git and project management tools like Jira.
    • Strong leadership and mentoring abilities, with a track record of building and leading high-performing QA teams.
    • Excellent communication and collaboration skills, with the ability to work effectively across functional teams.
    • Analytical and problem-solving skills, with a strong attention to detail.

    Nice to have:

    • Experience with load testing and performance testing tools (e.g., JMeter, Gatling) is a strong advantage.
    • Strong knowledge of multi-tenant systems, including tenant isolation and data segregation requirements is a plus.
    • Experience with cloud environments (e.g., AWS) and containerization (e.g., Docker, Kubernetes).
    • Familiarity with security testing tools (e.g., OWASP ZAP, Burp Suite).
    • Experience with performance monitoring and observability tools (Prometheus, Sentry, Zabbix).

    Qualifications:

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

    Method of Application

    Use the link(s) below to apply on company website.

     

    Build your CV for free. Download in different templates.

  • Send your application

    View All Vacancies at ENGIE Back To Home
Latest Jobs

Subscribe to Job Alert

 

Join our happy subscribers

 
 
Send your application through

GmailGmail YahoomailYahoomail