Senior Software Engineer

IPG Mediabrands
Summary
Join Kinesso as a Senior Software Engineer (Python) and build distributed systems for our internal data and machine learning community. Collaborate with data engineers, data scientists, and product teams to implement their requirements. Develop and maintain microservice-based API applications, diverse data stores, and cloud platform solutions. Utilize containerization technology for deployment and scaling. This role requires strong Python coding skills, experience with various data stores and application integration techniques, and expertise in building CI/CD pipelines. The ideal candidate will have a Bachelor's or Master's degree in a related field and 5-8 years of relevant experience.
Requirements
- Bachelorโs or Masterโs degree in Computer Science, Engineering, or a related technical field
- Minimum of 5-8 years of experience in a similar role
- Strong coding skills in Python, with a focus on writing clean, efficient, and maintainable code
- Technical proficiency working with various data stores such as RDMS (e.g., Postgres, MySQL), Data Warehouse (e.g., Redshift, Snowflake), and NoSQL (e.g., ElasticSearch, DynamoDB)
- Strong knowledge of various application integration techniques such as request/response (e.g., REST HTTP, gRPC), message queues (e.g, Rabbit MQ, SQS), Pub/Sub, webhooks and stream processing (e.g., Kafka, AWS Kinesis)
- Experience in building and maintaining CI/CD pipelines for automated build and deployment processes (e.g., Jenkins, Github Actions, FluxCD, ArgoCD)
- Deep understanding of cloud platforms (e.g., AWS, Azure, Google Cloud) and containerization technologies (e.g., Docker, Kubernetes)
- Able to stay ahead of the curve with new and emerging technologies
- Excellent communication and collaboration skills
- Proficient in English as a first language โ both verbal & written
- Excellent communication skills with the ability to effectively interact with non-technical users
- The ability to consistently deliver solid, successful solutions in short development cycles
- A strong spirit of innovation, self-starter, independent, and with the ability to produce solutions to meet business problems
- Strong desire to learn new things and pass knowledge acquired onto others
- Able to manage own hours and work with a remote team environment
Responsibilities
- Develop and manage reliable and scalable distributed systems of data services to support inter data and ML engineering needs
- Provide technical expertise and leadership in requirements analysis, design, effort estimation, development, testing and delivery of scalable and secure distributed data services
- Collaborate and work closely with data engineers, data scientists, and product teams to understand requirements and implement their requirements and concerns
- Develop and maintain microservice-based API applications using web framework in Python
- Implement and maintain a spectrum of data stores including RDBMS, NoSQL, Object Stores, and Vector Store
- Make use of cloud platform and cloud services to develop and enhance platform solutions
- Utilize containerization technology for effective deployment and scaling
Preferred Qualifications
- Familiarity with tools and technologies used for building and maintaining data pipelines (e.g., Dagster, Airflow) with ability to integrate diverse data sources and formats is a plus
- Experience in ad tech is a strong plus
Benefits
Employees can manage their own time with flexible hours