Senior Python Developer (Performance Optimization)

We are looking for Senior Python Developer (Performance Optimization) with experience of 5+ years.

LOCATION

Bangalore

DEPARTMENT

Web

JOB-TYPE

Full Time

Qualification : Computer Science, Engineering or a related field

Experience : 5+ years

No. of Vacancy :2

Job Description

Project Overview

We are working on a high-performance data processing system that handles real-time information using complex mathematical and physics-based algorithms. While the system functions as intended, it faces performance challenges, especially when processing multiple data points simultaneously. The goal is to optimize the system to ensure that all processing tasks are completed within 2 seconds, regardless of data load.

Responsibilities

    • Analyze and optimize an existing Python codebase that involves complex calculations.
    • Identify and address performance bottlenecks to ensure efficient data processing.
    • Apply advanced data structures and algorithms to improve processing speed.
    • Collaborate with an R&D team to integrate and validate performance enhancements.
    • Conduct thorough testing to ensure the system performs optimally under various data loads.
    • Provide detailed documentation and support for the optimized solution.

Required Qualifications

    • Bachelor’s or Master’s degree in Computer Science, Engineering, or a related field.
    • 5+ years of experience in Python development with a focus on performance optimization.
    • Strong knowledge of Data Structures and Algorithms, particularly in high-speed data processing contexts.
    • Experience with profiling, debugging, and tuning Python applications for enhanced performance.
    • Analytical problem-solving skills and the ability to work efficiently in a fast-paced environment.

Preferred Qualifications

    • Experience with Complex Mathematical and Physics-Based Algorithms: The ideal candidate will have a background in developing and optimizing systems that involve intricate mathematical models and physics-based computations. Understanding the nuances of these algorithms is crucial for fine-tuning the system’s performance.
    • Familiarity with Low-Level Optimizations: Proficiency in low-level optimization techniques is highly desirable. This includes:
       Cython: Experience with Cython for converting Python code into C to enhance execution speed, particularly in computationally intensive tasks.
       NumPy: Deep knowledge of NumPy for performing high-level mathematical operations efficiently. Familiarity with optimizing NumPy code for better performance in large-scale data processing.
       GPU Acceleration: Experience leveraging GPU acceleration to offload computationally heavy tasks from the CPU to the GPU, thus significantly speeding up processing times. Familiarity with libraries such as CUDA, PyCUDA, or TensorFlow is a plus.
    • Understanding of Real-Time Systems and Performance-Critical Applications: The candidate should have a proven track record of working on real-time data processing systems where timing is critical. This includes optimizing systems to maintain high performance under strict time constraints, ensuring that all processes complete within a specified timeframe, regardless of data complexity or volume.

Desired Candidate Profile

Experience: 5+ years

Location: Bangalore

Qualification: Computer Science, Engineering or a related field

Job Type: Full-Time, Permanent

Schedule: Day Shift, Monday to Friday

Workplace Type: On-site (Work from Office)

Notice Period: Immediate

Awards & Accolades

Get in touch