Department: Product Development
Opera Software is looking for a Go Developer to join the growing Opera Payments Engineering Team located in Gothenburg, Sweden.
The ideal candidate should be able to work effectively with other developers, project lead, and quality assurance engineers to solve complex issues, build and maintain a scalable, highly available, secure, and robust system.
Opera Payments Platform (OPay) enables users to pay for various services through their mobile or web browser. It provides fast, easy, and secure payments and money transfers. Our key markets are emerging economies in Africa, Asia, and South America, where Opera has a traditionally strong presence and user base.
At Opera Software, we develop superior products and services for our users around the world through state-of-the-art technology, innovation, leadership, and partnerships. Our product portfolio includes web browsers, payment solutions, news aggregation services, data compression, and privacy. Our products enable more than 350 million internet consumers to discover and connect with the content and services that matter most to them, regardless of the device, network, or location.
- Collaborate with an autonomous team of developers, designers, testers and product owners to find end-to-end solutions to important problems
- Build and maintain the payment solutions which could be used by millions of users in Africa
- Be involved in architectural and design discussions, building toward an efficient, extensible and secure payment system
- Improve test coverage and quality of the products
- B.Sc. or M.Sc. in Computer Science or equivalent experience
- Strong knowledge of object-oriented programming languages, paradigms, constructs and idioms
- Strong knowledge of web architecture and distributed systems
- Strong knowledge of application architecture and design patterns
- Strong knowledge of concurrent programming and thread handling
- Care about quality and understand what it means to ship high-quality code
- Understand how to write scalable, robust, testable, efficient, performant and easily maintainable code
- Experience with code versioning tools such as Git
- Experience with NoSQL databases
- Experience with Agile work processes
- Self-motivated, structured, and able to take initiative as well as being creative and curious
- Autonomous working style, with eagerness to improve systems, processes, and yourself
- Fluency in English, both written and spoken, and good communication skills
Ideal job requirements
- Knowledge of Go programming language, paradigms, constructs, idioms, framework and tools:
- Goroutine and channel patterns
- Go’s templating language
- Popular Go web frameworks, such as Gin
- Ability to write clean and effective Godoc comments
- Writing unit and functional tests
- Knowledge of web security
- Knowledge of continuous integration/delivery