Project Engineer

Il y a 3 jours

Clichy, Île-de-France Enea AB Temps plein 55 000 € - 75 000 € Contrat

Workingas software engineer in the Project Engineering team:

You bring proven experience working in Customer Operations and/or R&D environments, with the ability to design, develop, and support network-related software. Your focus is on ensuring optimal performance, efficient system resource utilization, and maintaining Carrier-Grade stability.

Position summary:

The Project Engineering team is responsible for customizing and adapting Enea Qosmos products to customer environments. As a software engineer on this team, you will develop custom applications or modules, implement product-specific modifications, and provide integration guidance and technical support. This role requires a strong ability to quickly learn and adapt to new environments, tools, and technologies. You may occasionally work directly on customer premises, collaborating with their R&D teams to support integration efforts and resolve technical issues.

Main Duties:

Feasibility Phase

  • Participate in feasibility studies to assess technical solutions for customer requirements.
  • Estimate development and integration effort in collaboration with project stakeholders.
  • Analyze existing product capabilities and identify areas for customization or enhancement.

Development Phase

  • Design and develop custom features, modules, and plugins to meet customer needs, ensuring seamless integration into the Qosmos product or customer environments.
  • Perform reverse engineering of network protocols and implement corresponding DPI plugins.
  • Follow coding standards and internal procedures for quality and maintainability.
  • Participate in peer code reviews to ensure high code quality across the team.
  • Write user and technical documentation for developed features and components.
  • Use software profiling tools to identify performance bottlenecks and propose optimizations.
  • Benchmark solutions to evaluate performance, scalability, and resource utilization.

Testing & Validation

  • Develop automated testing tools and frameworks to support features and new development validation.
  • Execute functional and automated test scripts to verify Product and system behavior.
  • Validate feature operation in target environments, both internally and in collaboration with customers.
  • Analyze test results and provide feedback to ensure carrier-grade stability and reliability.

Integration & Post-Project Support

  • Support integration efforts by providing technical assistance to customers, either remotely or on-site when required for confidentiality, limited access, or urgent timelines.
  • Collaborate with customer R&D teams during integration phases to troubleshoot issues and ensure smooth deployment.
  • Assist Customer Support in analyzing and reproducing issues, proposing workarounds or patches when needed.
  • Collect relevant logs and diagnostic information to aid in issue resolution.
  • Communicate regularly with project management to report progress, risks, and mitigation strategies.
  • Ensure that technical goals and project deadlines are met.

Profile Prerequisites

Education & Experience:

  • Bachelor's degree (or higher) in Computer Science, Information Systems, or a related field, with a specialization in networking or systems programming.
  • Up to 3 years of professional experience in software development within Linux environments.

Technical Skills:

  • Knowledge of C programming, gained through academic projects, internships, or professional experience.
  • Good understanding of algorithms and data structures, with the potential ability to design efficient and scalable solutions.
  • Familiarity with multi-threaded application development and concurrent programming techniques.
  • Basic knowledge of Linux development tools (compilers, debuggers, build systems).
  • Experience developing on Intel x86 architectures; familiarity with other multi-core CPU platforms such as ARM or MIPS is a plus.
  • Familiarity with debugging and profiling tools to identify and resolve performance bottlenecks.
  • Hands-on experience with version control systems such as Git (GitLab or similar platforms).
  • Basic understanding of IP networking protocols and network stack behavior.
  • Experience with scripting languages such as Python, Bash, or similar languages for automation, testing, and tooling.
  • Exposure to virtualization technologies (e.g., Docker, KVM, VirtualBox) is a plus.

Language & Communication:

  • Fluent in English, both written and spoken.
  • Strong analytical and problem-solving skills, with the ability to work independently and collaboratively in cross-functional teams.

What can