- Company Name
- W3Global
- Job Title
- Software Engineer
- Job Description
-
Job title: Software Engineer
Role Summary: Senior Python developer responsible for designing, building, and maintaining time‑series data pipelines and interactive dashboards using Plotly Dash. Must deliver clean, modular code, rigorous testing, and clear documentation while collaborating in a hybrid environment.
Expectations: 9+ years of professional software development experience, proven expertise in Python and data manipulation, strong written and verbal communication skills, and a track record of applying engineering best practices.
Key Responsibilities:
1. Design and implement efficient data ingestion and preprocessing pipelines for time‑series datasets.
2. Perform data cleaning, feature engineering, aggregation, and SQL-based transformations.
3. Build responsive dashboards with Plotly Dash, including advanced interactivity, callbacks, layouts, and component integration.
4. Develop and consume REST APIs to exchange data with backend services.
5. Manage codebase with Git, enforce modular design, write unit tests (pytest), and maintain documentation and docstrings.
6. Apply coding standards using linters and formatters; ensure code quality through reviews and continuous integration.
7. Communicate progress and results to stakeholders in clear, concise written and verbal formats.
Required Skills:
- 9+ years of professional software engineering experience.
- Python programming: OOP, functions, classes, list comprehensions, generators, error handling.
- Virtual environment and package management (pip, venv).
- Data libraries: pandas, NumPy; optional experience with Polars.
- Data manipulation: cleaning, missing value handling, grouping, merging, pivoting, aggregations, SQL.
- Software engineering best practices: Git, modular code, reusable components, unit testing with pytest, documentation, docstrings, linters, formatters.
- Plotly Dash: custom Graph Objects, callbacks, layout (HTML/CSS), components (dropdowns, sliders, tables), REST API integration.
- Strong written and verbal communication.
Required Education & Certifications:
- Bachelor’s degree in Computer Science, Software Engineering, or related field (or equivalent professional experience).
- Certifications in Python, data engineering, or related domains are a plus.