Senior Golang Developer - US Product Company
Summary
Senior Golang developer/software architect for an American leave-management SaaS product whose clients include Google, IBM, and Meta. Day to day: build and scale Go server-side services, design and optimize databases and REST/GraphQL APIs, cover code with tests, and manage CI/CD within a geographically distributed team.
Our partner is an American company that has developed a specialized leave management system. Among the product’s clients are Google, IBM, Meta, Adobe, and other leading global corporations.
We are looking for a Golang and a Software Architect to join a team of highly skilled engineers, where the minimum development experience is 12 years.
Main Responsibilities
- Participate in the design, implementation, and maintenance of server-side code for web applications and services, ensuring it is efficient, scalable, and secure
- Design and manage databases, including schema design and improvements, query optimization, and ensuring data integrity and security
- Develop and maintain integrations between different parts of the system and with external services, ensuring robustness and clear documentation
- Ensure code is developed with a comprehensive understanding of deployment procedures and how it will function within the overall project scope
- Implement and maintain comprehensive test coverage to ensure the reliability and stability of the codebase
- Regularly maintain and refactor the codebase to address issues, improve performance, and manage technical debt
- Work closely with a geographically distributed team of engineers, QA, UI/UX designers, and PMs to ensure seamless integration, align on project goals, and collaboratively address technical challenges
- Actively participate in regular internal team meetings and company-wide meetings to stay aligned with project goals, share updates, and contribute to broader organizational challenges
- Implement and adhere to security best practices to protect against common vulnerabilities and ensure the safety of the application and its data
Mandatory Requirements
- 4+ years of experience in commercial software development Go programming language
- 10+ years of experience with software development
- Experience with relational databases, including writing and optimizing SQL queries, designing schemas, and managing migrations
- Basic understanding in containerizing applications using Docker and managing Dockerfiles
- Experience with CI/CD pipelines, automating build, test, and deployment processes, and familiarity with tools like Jenkins or GitHub Actions
- Proficiency in Git for version control, including branching, merging, pull requests, and code review practices
- Proficiency in testing and debugging, including writing unit and integration tests
- Ability to design and implement scalable RESTful and GraphQL APIs, with a strong emphasis on security best practices (e.g., OWASP Top 10)
- Analytical and problem-solving abilities to address technical challenges and optimize existing systems
- Strong communication and documentation skills with the ability to explain technical concepts to both technical and non-technical stakeholders
Will be a plus
- Understanding of concurrency models, goroutines, channels, and parallelism
- Familiarity with additional database technologies like Cassandra, Redis, or Elasticsearch can be beneficial for handling diverse data storage and retrieval needs
- Familiarity with cloud platforms such as AWS, including deployment, scaling, and managing services
- Experience with GraphQL, which can complement RESTful API skills
- Experience with message brokers can be useful for managing asynchronous communication in distributed systems
- Familiarity with Ruby on Rails since we have an internal project using this framework
We offer
- Equipment
- Ongoing learning opportunities
- Insurance for employees and family
- Opportunity for the most experienced employees to work in the US office in the future