Bachelor's degree in Computer Science, Software Engineering, MIS or equivalent combination of education and experience
Experience implementing applications supporting data lakes, data warehouses and data applications on AWS for large enterprises
Programming experience with Python, Shell scripting and SQL
Solid experience of AWS services such as CloudFormation, S3, Athena , Glue, EMR/Spark, RDS, Redshift, DynamoDB, Lambda, Step Functions, IAM, KMS, SM etc.
Experience in AWS data lake/data warehouse/business analytics
Knowledge of ETL/ELT in Cloud and on-premise
End-to-end data solutions (ingest, storage, integration, processing, access) on AWS
Architect and implement CI/CD strategy for Data platform
Implement high velocity streaming solutions using Amazon Kinesis, SQS, and Kafka (preferred)
Migrate data from traditional relational database systems, file systems, NAS shares to AWS relational databases such as Amazon RDS, Aurora, and Redshift
Migrate data from APIs to AWS data lake (S3) and relational databases such as Amazon RDS, Aurora, and Redshift
AWS Solutions Architect or AWS Developer Certification preferred
Requirements:
8+ years of experience as Software engineer
Strong knowledge and hands on experience on Data lake and warehouse Architecture in Cloud
Strong knowledge on Microservice based design patterns
Experience developing business applications using NoSQL/SQL databases.
Plus to have knowledge on Snowflake
Responsibilities:
Coordinate and motivate the team members.
Design components and applications according to business requirements.
Work along with other Tech Leads, Product Managers, and Engineering Managers.
Generate detailed reports with accomplished, planned, and blocked tasks.
Identify and mitigate risks, including security risks.
Actively promote a Code Review culture and review the team's Pull Requests.
Designing, building and maintaining efficient, reusable, and reliable architecture and code.
Ensure the best possible performance and quality of high scale web applications and services.
Participate in the architecture and system design discussions
Independently perform hands on development and unit testing of the applications;
Collaborate with the development team and build individual components into complex enterprise web systems;
Work in a team environment with product, frontend design, production operation, QE/QA and cross functional teams to deliver a project throughout the whole software development cycle;
Responsible to identify and resolve any performance issues
Keep up to date with new technology development and implementation
Participate in code review to make sure standards and best practices are met