Position: Go Developer
Company: Takeoff
Category: Golang
Experience required: 3y
English level: upper

As a Software Engineer, you will have a significant impact on the success of our product. Your skills across the full software development life cycle will allow us to delight our customers.

You will be involved in:
- Designing and developing backend services using Go.
- Utilizing design, coding patterns, tools, frameworks, and methods to facilitate in effectively meeting the team sprint objectives and the overall quarterly team objectives.
- Writing scalable, robust, testable, efficient, and easily maintainable code.
- Aligning correlated systems across squads on common API patterns, practices, or other instrumentation.
- Writing tests and docs as you are to write readable and efficient code.
- Partnering with product, design, and peer engineering leads and managers.
- You’ll be fully responsible for what you are doing, ensuring product quality, understanding that the product is what you deliver, not the code.
- The agile development environment and taking initiatives in improving systems for the sake of your teammates and our users.
- Participating in on-call duties (as needed).

Personal requirements. Takeoff is a product-oriented company. We are building a team where each member is:
- result-oriented
- able to put users first
- honest and open to management and colleagues
- interested to understand the true purpose of ethics, confidentiality, culture, and goals of the Company

Key Qualifications:
- 3+ years of software experience - Java, Python, or Rust, etc.
- Experience in Golang.
- Strong knowledge of Computer Science fundamentals like object-oriented design, data structures, algorithm design, and complexity analysis.
- Understanding of containers, deployment systems, and container management platforms, preferably Kubernetes.
- Understanding of distributed systems and service-oriented architecture along with web services and related standards like RESTful APIs, JSON documents, SQL, and NoSQL databases.
- Strong understanding of cloud infrastructures. Preferably strong knowledge of GCP and experience in building GCP-based solutions. AWS or Azure experience is welcome.
- Excellent communication, problem-solving and analytical thinking skills.
- Knowledge of Agile process and principles.

Our tech stack:
- On the back-end, we heavily use Clojure and Python
- Moving towards a cloud-native architecture leveraging Go and Python
- Moving testing framework from Java to Go and Python
- NoSQL and RDBMS databases
- Github for source code storage and Jenkins for builds
- GCP hosting with Kubernetes
- Confluence for documentation and JIRA for bug tracking