Description:
We are looking for Middle Golang Developer to join our client’s team on a subcontract basis.
Developer of a container lifecycle management platform intended to help application developers create, build, deploy and run their own cloud-native applications with less friction, complexity, and waste. The company's platform evaluates containers using combinations of run-time, static container analysis and removes unnecessary files, executables, and packages by observing container run-time behavior, enabling clients to quickly build applications that power every business.
Should have:
- Experience in software development for more than 3 years
- Excellent knowledge in Computer Science, Computing Theory:
○ Paradigm & Principles (OOP, SOLID, DDD, TDD, BDD)
○ Database theory (RDBMS)
○ Code testing practices
○ Algorithms & Data structures
○ Design Patterns
○ Security patterns, Reverse engineering resistance, Common attacks types (OWASP)
- Understanding of network interactions:
○ protocols
○ conventions (e.g. REST, RPC);
○ authentication / authorization flows & best practices
- Excellent knowledge and experience in Golang (more than 2 years)
- Practical commercial experience with:
○ REST API development
○ RDBMS (e.g, PostgreSQL, MySQL)
○ Key-value storages (e.g. Redis, Memcached)
○ Messaging systems (e.g. RabbitMQ, Apache Kafka, Google Pub/Sub)
○ Version control systems (git)
○ Continuous Integration tools (e.g. Gitlab Pipeline, Jenkins, TeamCity, Bamboo)
○ Docker
○ Troubleshooting, profiling and debugging applications
○ Agile software processes and technologies
○ Code Review process
○ Refactoring process
- Perform a broad range of complex technical or professional activities, in a variety of contexts. Investigate, define, and resolve complex issues
- Able to work in distributed cross-functional teams effectively
- Influence customers and team members on the project level
- May supervise others or make decisions which impact the work assigned to individuals or phases of projects
- Plan, schedule, and monitor your own work (and of others where applicable) competently
- Have learning agility (readiness for challenge and being open to change)
- Strong interpersonal and communication skills
- English - Upper-Intermediate+
- Location - Ukraine
- Time zone - US pacific time, or at least overlapping 5 hours
Nice to have:
- Understanding of orchestration and containerisation (e.g. Kubernetes)
- Practical commercial experience with:
○ Experience with Search Engines (e.g. ElasticSearch, Azure Search, Apache Solr)
○ Provisioning tools (e.g. Terraform, Ansible)
○ Quality tools (e.g. SonarQube)
- Experience with web architecture at scale (20k rpm and above)
- Experience with NoSQL data backends (Redis, MongoDB, ElasticSearch)
Responsibilities:
- Back-end development to meet customer’s business needs and implement components according to modern software development environment (cloud-based platforms, microservice architecture, etc.)
- Taking part in the decision-making process in design application architecture, solution development, architecture and code review
- Develop and review feature design documents and provide inputs/update to specifications for the solution
- Design and implement a set of various types of tests (unit, integration, functional, etc)
- Proactive position in solution development, processes improvements
- Working in an international distributed team in an Agile environment
- Communicate with PMs, engineers, Architects, QA and other colleagues and stakeholders
- Delivering the product roadmap and plannings
- Using high coding standards, software best practices and writing highly testable, automatable and performant code
We offer:
- The full-time workload on a remote basis
- Start - ASAP
- Duration - 6+ months with monthly renewable
If you think you are the right person, we'd welcome your application!