Software Engineer – Data
We are seeking a remote Senior Software Engineer to join our Data Enablement team. This role requires a strong understanding of modern data environments, with a focus on privacy, compliance, and governance. You will work on software solutions that address challenges related to data usage, consent, and jurisdictional regulations, enabling customers to achieve their objectives while supporting enterprise-level data consumers.
In this role, you will collaborate with cross-functional teams, including product owners, data engineers, and business partners, to design and deliver scalable, high-quality software solutions. Your problem-solving skills, passion for innovation, and ability to communicate effectively will make you a key player in delivering impactful products. You’ll be an advocate for new technologies and development techniques, driving the creation of world-class solutions for the organization and its business partners.
Role Responsibilities:
-
Technology Competencies:
- Design and implement scalable software solutions in collaboration with product owners, data engineers, and business partners, using Agile/Scrum methodologies.
- Maintain and improve existing software systems.
- Deliver software solutions on AWS or other cloud platforms.
- Provide work estimates and communicate progress, challenges, and solutions.
- Profile and analyze data to design scalable, high-performance solutions.
- Utilize continuous integration and deployment frameworks, including automated unit and integration tests.
- Integrate with various vendor and in-house software solutions.
- Work with OTP & OLAP databases, NoSQL databases, and data warehouse, lake, and lakehouse technologies.
-
Engineering Delivery:
- Design and implement highly scalable cloud-based data services.
- Develop frameworks for data ingestion using various patterns.
- Identify and resolve issues related to data management, data quality, performance bottlenecks, and operational challenges.
- Contribute to design, code, and test plan reviews in a collaborative environment.
- Support and enhance existing applications, resolving defects and implementing necessary enhancements.
Required Qualifications and Technical Skills:
- Bachelor’s degree in Computer Science or related field, or equivalent industry experience.
- 5+ years of experience in backend software development, building services and components.
- Experience building RESTful APIs, gRPC, and GraphQL services.
- Professional experience with AWS services such as EMR, Lambda, Elasticsearch, RDS, DynamoDB, and Kinesis.
- Proficiency in programming languages such as Python, Java, JavaScript, Scala, or other object-oriented and functional programming languages.
- Experience with Infrastructure as Code (IaC) using tools like Terraform or CloudFormation.
- Familiarity with build automation tools like Jenkins.
- Experience with source code control tools such as GitHub or Bitbucket.
Nice-to-Have Skills:
- Experience with Jira and Splunk.
- Experience writing unit tests, integration tests, and end-to-end tests.
- Knowledge of data warehouse, data lake, and lakehouse concepts.
Preferred Skills:
- Expertise in Python, Java, Scala, JavaScript, SQL, NoSQL, data warehousing, RDS, PostgreSQL.
- Familiarity with CoPilot, JetBrains, unit testing, integration testing, object-oriented design (OOD), functional programming (FP), data modeling, and distributed systems.