Senior Software Engineer
- Full-time
- Department: Engineering
Company Description
Wiser Solutions is a suite of in-store and eCommerce intelligence and execution tools. We're on a mission to enable brands, retailers, and retail channel partners to gather intelligence and automate actions to optimize pricing, marketing, and operations initiatives, both in-store and online. Our Commerce Execution Suite is available globally.
Job Description
As Snooper App, we were honoured with the Start-up of the Year Award in 2016 and have grown to become a prominent provider of retail execution services in the APAC region. Our highly acclaimed mystery shopping and survey app for Android and iOS enables us to gather valuable data, empowering us to address our retail customers' challenges through our platforms, analytics, advice, and tools for product and in-store execution. By joining Wiser Solutions, Inc., a global leader with 500 employees worldwide, we now offer an expanded suite of tools. As the foremost leader in Commerce Execution SaaS products, our comprehensive commercial SaaS suite provides unparalleled insights to our customers. We invite you to join us on this exciting journey.
In this role, you will report to our Director of Engineering, APAC, bringing the technology vision to life. As a Senior Software Developer, you will support junior team members, maintain and evolve software platforms and infrastructure, and integrate our APAC platforms into global SaaS products.
The ideal candidate is a structured, analytical, systematic, and passionate developer with a strong understanding of software design. You should be proficient in a range of technologies, committed to clean code and good solution architecture, and have the desire to be a developer in a multifaceted environment over the next few years. Continuous learning, openness to new technologies, adaptability to changing contexts and priorities, and the ability to handle constructive feedback are essential.
Objectives of this role
- Help implement the technological vision through code, dev-ops, and infrastructure, while consulting with engineering leadership and guiding junior team members.
- Enhance, maintain, and administer various products, from back-ends to web front-ends and the mobile app, using synchronous and asynchronous approaches.
- Work with a variety of approaches, from monoliths to micro-services, event processing to data lakes, legacy systems to new platforms, or data exports and transformations
- Improve our solutions for scalability, stability, security, performance, and cost objectives.
- Deliver clean, secure, concise, and well-tested code, and contribute to codebase refactoring, applying provided standards, best practices, guidelines, and conventions, and contribute to them.
- Review pull requests, provide constructive feedback, and document technological circumstances.
- Participate in our agile process, estimate and plan features and their implementation
- Be part of an engineering culture that is based on sharing knowledge. continuous learning.
- Take part in local and global meetings and tech sessions.
- Collaborate with engineering leadership, product managers, and global teams, aligning with our core engineering strategy, team goals, and company objectives
Qualifications
- University degree in Computer Science (BSc/MSc), considering similar experience
- Min. 8 years of demonstrable work experience as a software developer/engineer, following graduation, encompassing experience in front-end, back-end, infrastructure, and dev-ops
- Min. 5 years of experience in OOP with Kotlin/Java and JUnit, including solid knowledge of build automation tooling (gradle, maven, or bazel).
- Min. 5 years of experience in implementing RESTful APIs, with 3 years of experience in Spring
- Min. 5 years of experience in various database systems, including SQL and noSQL, with applicable knowledge in MongoDB, from simple queries to aggregates and data modelling
- Min. 3 years with exposure to React/Vue/Angular in production environments, with Min. 2 years of personal involvement in React/Redux development
- Min. 3 years of experience with git, and a solid understanding of branching models
- Min. 3 years of experience with cloud platforms, with specific know-how in AWS
- Min. 2 years of experience in infrastructure as code, preferably with Terraform
- Min. 2 years of experience with Docker
- Min. 2 years of exposure to mobile development, preferably using React Native
- Min. 1 year of experience in agile software development processes such as Scrum
- Strong, demonstrable understanding of software design, the software development process and lifecycle, including design patterns, code reviews, and dev-ops
- Ability to navigate Linux/UNIX based operating systems, their corresponding shell/terminals, and to maintaining open source software on self-hosted Linux machines
- Experience with integrating various third-party APIs
- Advanced English communication skills for effectively articulating technological concepts
- Good organisational abilities, with an awareness of deadlines, priorities, and impediments
- A sense of ownership and autonomy, coupled with an unwavering commitment to delivering exceptional results for customers, users, and the team, while deeply valuing the importance of people and company culture
- A strong team player who prioritises the success of the team above individual work items
Bonus skills and qualifications:
- Experience with mobile app development using Expo
- Experience with TypeScript
- Experience with graphQL
Some of the technologies you will be working with:
- Back-end: Kotlin (JVM), Spring Boot, JUnit, Mockito, TypeScript, GraphQL -
- Databases: MongoDB, Postgres
- Front-end: React, Redux, React Admin
- Mobile: React-Native, Redux. Expo, Firebase, and more
- Infrastructure: AWS + Terraform
- Event processing: AWS Lambda, SQS, SNS, EventBridge, NATS
- IDEs: IntelliJ IDEA, Visual Studio Code, XCode, Android Studio, and more
Additional Information
Other Duties - Please note this job description is not designed to cover or contain a comprehensive listing of activities, duties, or responsibilities that are required of the employee for this job. Duties, responsibilities, and activities may change at any time with or without notice.
EEO STATEMENT - Wiser Solutions, Inc. is an Equal Opportunity Employer and prohibits Discrimination, Harassment, and Retaliation of any kind. Wiser Solutions, Inc. is committed to the principle of equal employment opportunity for all employees and applicants, providing a work environment free of discrimination, harassment, and retaliation. All employment decisions at Wiser Solutions, Inc. are based on business needs, job requirements, and individual qualifications, without regard to race, color, religion, sex, national origin, family or parental status, disability, genetics, age, sexual orientation, veteran status, or any other status protected by the state, federal, or local law. Wiser Solutions, Inc. will not tolerate discrimination, harassment, or retaliation based on any of these characteristics.