- You love to code!
- You use Linux or MacOS as your primary desktop and development environment.
- You are proficient with git (version control system).
- You are proficient with any modern IDE (e.g. VSCode / IntelliJ IDEA).
Nice to Haves
- Experience with No-SQL databases (e.g. MongoDB).
- Experience creating and consuming REST APIs.
- Experience creating and consuming GraphQL services.
- Experience with Protocol Buffers.
- Experience using AWS and/or Google cloud services and APIs.
- Experience setting up a cloud server from scratch (e.g. EC2/Linode/Digital Ocean).
- Experience with popular relational databases (e.g. MySQL).
- Experience with message queues (e.g. Amazon SQS / RabbitMQ).
- Experience with Golang, Ruby, Java or Python.
- Understanding of HTTP and other internet protocols.
- Discuss requirements with team lead.
- Come up with estimates for the work which is well understood.
- Identify research tasks where the implementation approach is not well understood.
- Translate design documents into working code with good unit test coverage.
- Update team lead with progress and plan for the next day on a daily basis.
- Use automation and tools to simplify development workflows.
- Keep up-to-date with modern software engineering best practices.