- Company Name
- IT WORLD LIMITED
- Job Title
- Senior Software Engineer
- Job Description
-
Job Title: Senior Software Engineer
Role Summary
Lead the design, development, and maintenance of high‑performance, time‑series data processing and analytics solutions. Build scalable dashboards and APIs using Python, Pandas, NumPy, and Plotly Dash, ensuring code quality, reusability, and maintainability.
Expectations
* Deliver robust, production‑grade software within defined timelines.
* Mentor junior engineers on best practices, coding standards, and data‑engineering techniques.
* Collaborate with cross‑functional teams (data science, product, operations) to translate business requirements into technical solutions.
* Maintain continuous integration pipelines and enforce high test coverage.
Key Responsibilities
* Architect and implement efficient time‑series data pipelines and analytics modules.
* Design, develop, and deploy interactive dashboards with Plotly Dash, incorporating advanced interactivity and REST API integration.
* Write clean, modular Python code, applying OOP principles, comprehensive error handling, and unit tests (pytest).
* Manage virtual environments, package dependencies (pip, venv), and ensure reproducible builds.
* Perform data cleaning, preprocessing, aggregation, merging, and pivot operations using Pandas/NumPy (and optionally Polars).
* Apply version control best practices using Git, including feature branching, pull‑request reviews, and CI/CD.
* Document code, APIs, and data schemas thoroughly; maintain updated API documentation.
* Monitor application performance, troubleshoot issues, and suggest optimizations.
Required Skills
* 9+ years of professional software development experience.
* Strong command of Python (functions, classes, OOP, list comprehensions, generators).
* Extensive experience with data manipulation libraries: Pandas, NumPy, (Polars optional).
* Proficiency with Plotly Dash: Graph Objects, callbacks, layout design, component integration, and REST API interaction.
* Advanced data‑engineering skills: time‑series handling, missing data treatment, group‑by, merge, pivot, advanced aggregation, SQL integration.
* Software engineering practices: Git, modular code design, unit testing (pytest), linting, formatting, documentation, and code reviews.
* Excellent written and verbal communication; ability to convey complex technical concepts to non‑technical stakeholders.
* Proficiency in virtual environment and package management (pip, venv).
Required Education & Certifications
* Bachelor’s degree in Computer Science, Software Engineering, or related field (or equivalent practical experience).
* Python certification or similar advanced programming credentials preferred.