Position: Senior Software Engineer & Tech Lead
Category: Node.js
English level: fluent
Years of experience: 11

- Increased ETL performance by 2000%
- Designed and implemented high-load systems with 5M lambda invocations daily
- Migrated 3000 AWS resources into AWS CDK
- Parsed 5GB (JSON "single line" report) in lambda function with 3GB RAM
- Designed and implemented effective machine learning integration with a serverless solution
Senior software engineer and AWS solution architect with 14 years of experience, specializing in developing high-quality software and designing cloud infrastructures. My passion for application architecture, patterns, and domain-driven design is reflected in my work. I always strive to stay up-to-date with the latest industry trends and technologies. While my primary role is software development, my extensive experience and skill set also qualifies me to step into a tech lead role when necessary. My adaptability and leadership skills are well suited to managing both technical direction and team coordination, ensuring projects run smoothly and efficiently.

My expertise includes:

- Designing applications and software architecture to meet business needs.
- Building high-quality AWS infrastructures using AWS CDK.
- Developing Node.js applications with TypeScript.
- Creating automated data pipelines and integrating big data processing and machine learning technologies.
- Implementing best practices for security, scalability, and reliability.

My technology stack includes

- Node.js, TypeScript, JavaScript, and Python.
- Angular, React.js, Next.js, Tailwind CSS.
- AWS Lambda, StepFunctions, SQS, SNS, S3, API Gateway, EC2, Elastic Beanstalk, VPC, Route53, CloudFront, CloudFormation, CodeBuild.
- MongoDB, PostgreSQL, MySQL, DynamoDB, Snowflake.
- CI-CD, IaC, AWS CDK, AWS SAM, Serverless framework.
- Unit testing, Jest, Sinon.

My Tech Lead Responsibilities

- Conducting detailed code reviews to ensure quality and adherence to standards.
- Offering mentorship and guidance to junior team members to promote professional growth.
- Making crucial decisions related to product architecture to align with strategic goals.
- Overseeing the interactions among different product components to ensure seamless integration.
- Identifying and addressing any skills gaps within the team, and creating training plans as needed.