Senior Software Engineer (GoLang & Javascript)
Summary
Senior Software Engineer designing, building, and maintaining scalable Go-based backend services and APIs in an Agile/Scrum team, with focus on performance, reliability, and CI/CD automation.
We are seeking an experienced Senior Software Engineer with strong expertise in Go and modern software development practices to join our Engineering team. The role will focus primarily on designing, developing, and enhancing reliable and scalable applications while contributing to the technical direction and continuous improvement of our systems.
You will work as part of an Agile/Scrum environment, partnering with engineers, product teams, and other stakeholders to translate business requirements into effective technical solutions. The position also involves troubleshooting production issues, improving system performance, and taking ownership of applications throughout their development and maintenance lifecycle.
Experience supporting eCommerce or other high-volume digital platforms is highly preferred.
Key Responsibilities
Software Development & Engineering
Design, build, and maintain scalable applications and services primarily using Go
Translate functional requirements and technical specifications into clean, maintainable, and reliable software
Develop reusable components and services following established engineering standards and best practices
Contribute to application architecture and technical design discussions
Build and maintain APIs, backend services, and integrations that support business and customer-facing applications
Participate in code reviews and provide constructive technical feedback to improve code quality
Application Performance & Reliability
Investigate application issues, production incidents, and performance bottlenecks
Diagnose root causes and implement sustainable technical solutions
Monitor application behavior and identify opportunities to improve stability, scalability, and efficiency
Take ownership of assigned applications and services, including ongoing maintenance, enhancements, and technical improvements
Support production environments and participate in on-call activities when required
Work closely with Product, Engineering, QA, Design, and other stakeholders to understand requirements and deliver solutions
Participate in Scrum ceremonies, sprint planning, technical discussions, and retrospectives
Provide technical input during requirements analysis and solution planning
Communicate technical considerations, risks, dependencies, and recommendations to relevant stakeholders
Contribute to continuous improvement initiatives across development practices, tools, and processes
Quality & Automation
Develop and maintain automated tests to support application reliability and regression prevention
Apply appropriate testing and validation practices throughout the development lifecycle
Support CI/CD processes and contribute to improving automated build, testing, and deployment workflows
Identify opportunities to reduce manual effort through engineering automation and process improvements
User & Product Experience
Consider end-user requirements when designing technical solutions
Work with Product and Design teams to identify opportunities to improve application usability and overall user experience
Provide technical recommendations that balance user needs, business objectives, and system capabilities
Qualifications
Education
Bachelor's degree in Computer Science, Information Technology, Computer Engineering, or a related discipline
Experience
Minimum of 6 years of professional software development experience
Strong background in software design, development, troubleshooting, testing, and application maintenance
Experience working in Agile/Scrum development environments
Experience developing and supporting production‑grade applications
eCommerce, online retail, or high-volume digital platform experience is highly preferred
Technical Expertise
Strong proficiency in Go (Golang)
Experience with GORM or similar ORM frameworks
Strong knowledge of MySQL and PostgreSQL
Working experience with NoSQL databases
Familiarity with Redis and caching technologies
Experience working in Linux/Unix environments
Hands‑on experience with Jenkins or other CI/CD platforms
Understanding of RESTful APIs and microservices architecture
Exposure to messaging and event‑driven technologies such as RabbitMQ or Amazon SQS
Familiarity with AWS services, including Lambda, is an advantage
Experience with Docker and Kubernetes is a plus
Working knowledge of Shell scripting is beneficial