Senior Backend Software Engineer (Python / AWS)
New
D
DarizeBackend software
Workplace type: remote; Locations: Gdańsk, Bernarda Chrzanowskiego 11, Gdańsk, Country code: PLContractSenior
Salary160 - 190 PLN per hour
Apply NowOpens the employer's application page
Job Details
- Languages
- Languages: en B2, pl B2; very good spoken and written English
- Experience
- Minimum 5 years of experience in backend development in Python or Scala; minimum 5 years of practical experience with AWS.
- Required Skills
- AWSPostgreSQLPythonDynamoDBGitRESTful APIsScalaAWS LambdaCloudFormation
Requirements
- Have at least 5 years of backend development experience in Python or Scala.
- Have at least 5 years of practical AWS experience.
- Have experience with AWS Lambda, API Gateway, SQS, SNS, EventBridge, EventBridge Pipes, DynamoDB, and S3.
- Have practical experience with relational databases, particularly PostgreSQL.
- Understand NoSQL databases such as DynamoDB, including data modeling and efficient queries.
- Have experience designing and implementing RESTful APIs.
- Know software engineering practices including unit and integration testing, code review, and Git.
- Have experience with Infrastructure as Code using CloudFormation.
- Have very good spoken and written English.
- Experience with Scala is an advantage; Kotlin or Java experience is also valued.
- Knowledge of observability tools such as CloudWatch or X-Ray is an advantage.
- Experience with HL IT products or the container transport industry is an advantage.
Responsibilities
- Design and develop backend services using serverless and event-driven AWS architecture.
- Analyze existing AWS architecture and improve cost, performance, scalability, and resilience.
- Apply the AWS Well-Architected Framework when planning and implementing improvements.
- Optimize event-stream processing for throughput, latency, ordering, and retry mechanisms.
- Design reliable dead-letter queue (DLQ), replay, and idempotent event-processing mechanisms.
- Optimize PostgreSQL data models, queries, indexes, partitioning, and resource usage.
- Improve observability through metrics, tracing, and alerting.
- Define SLOs for critical services.
- Maintain code quality through unit, integration, and performance testing.
View Full Description & ApplyYou'll be redirected to the employer's site