Software Engineer at NielsenIQ | Job-Scouts.com

Software Engineer

NielsenIQ
full-time mid Chennai, TN, India · More jobs in Chennai, Tamil Nadu, India
This job comes from NielsenIQ's own careers page (see the original posting). Apply here to keep track of it, then finish on NielsenIQ's site.

Prefer a full account with a password? Sign Up to Apply

Job Description

We are seeking a Software Engineer with strong C++ and Python expertise to develop and support business-critical consumer data-processing systems. The role involves high-performance batch processing, data aggregation, calibration-support workflows, and reliable delivery of processed data to downstream platforms.

You will own features from technical design through production rollout, working across C++, Python, Oracle, and Linux-based orchestration.

Roles and Responsibilities

Design & Development

• Design, develop, and maintain high-performance C++ applications and reusable Python components for enterprise data-processing pipelines.
• Implement workflows for data extraction, transformation, aggregation, validation, and delivery.
• Apply modern C++ practices, including RAII, smart pointers, STL containers, and clear resource ownership, to build maintainable and reliable software.
• Develop and maintain Oracle-integrated processing components using SQL and existing Pro*C interfaces.
• Build and enhance Bash/KornShell scripts for application execution, workflow orchestration, and operational automation.
• Own technical designs, implementation, testing, documentation, and production rollout; contribute to architecture and design reviews.
Performance & Data Processing

• Optimize algorithms, data structures, memory usage, database access, and file I/O for large-volume processing.
• Develop and troubleshoot parallel processing workflows, addressing synchronization, resource contention, and safe concurrency.
• Work with partitioned datasets and structured data formats, including CSV and Parquet, across Oracle and cloud-connected processing environments.
• Maintain dependable interfaces between processing executables, Python modules, database packages, schedulers, and downstream systems.
• Improve pipeline scalability and recoverability through dependency management, controlled retries, locking, and safe rerun mechanisms.
Quality & Reliability

• Develop automated unit, integration, and regression tests for processing logic, database interactions, and failure scenarios.
• Diagnose crashes, memory issues, processing bottlenecks, and data discrepancies using logs, core dumps, debuggers, and profiling tools.
• Instrument applications with actionable logging, processing metrics, and resource-utilization monitoring.
• Participate in production support, incident investigation, root-cause analysis, and preventive improvements.
• Contribute to GNU Make-based builds, Docker packaging, GitHub Actions CI/CD, and code-quality checks.
• Follow secure coding practices, protect credentials, and manage third-party dependencies responsibly.
Collaboration & Leadership

• Conduct code and design reviews; mentor engineers in C++, Python, debugging, and performance engineering.
• Collaborate with Operations, Statistical Operations, Data Science, QA, database, and platform teams to translate business requirements into reliable solutions.
• Document processing logic, interfaces, dependencies, and operational recovery procedures.
• Evaluate development tools, including AI-assisted coding tools, while retaining responsibility for correctness, security, and maintainability.

Requirements

Function: General Business
Experience Level: Mid-Senior Level

Location

Chennai, TN, India
View on Google Maps

Similar open positions

Software Engineer NielsenIQ
Apply now