As a senior software engineer, you'll work closely with product, operations, and engineering teams throughout the company. We value curiosity to explore deeper into the systems, libraries, tools and look for scalable solutions. Familiarity with Event Driven Architecture would be desired.
You would be tasked with platformization of the Mobility Marketplace as a first-class problem, which requires understanding end-to-end use-cases and challenge the status quo at all times by reviewing current engineering techniques and tools and scout for opportunities and fundamental engineering changes that would bring agility, reliability to enable more business opportunities.
What You Will Do
Takes responsibility for the entire lifecycle of their stories: development, test, production, and subsequent fixes and improvements
Reaches out to stakeholders to clarify the requirements for the story they are working on
Improves the development experience at Gojek by enhancing development tools, test coverage, and/or code structure
Manages timely delivery for own tasks consistently
Actively supports their team in the tracking and reporting of execution metrics both through automation as we'll as disciplined adherence to processes and best practices
Has an in-depth understanding of at least one programming language and framework
Performs code reviews that follow the standards and practices of the engineering handbook and that are recognized by their team as helpful
Collaborates with other engineers, designers and QAs to flesh out implementation details based on the established pattern in the stream
What You Will Need
4-5 years of relevant experience. Hands-on in either Golang or Java
The ability to go into depth and breadth across tech stack used in the product vis-a-vis backend services, machine learning, data engineering, web development, data and analytics, infrastructure
Has worked on large scale event driven microservices architecture with an active use of Kafka and can architect solutions based on this pattern
Is familiar with basic programming principles such as SOLID and TDD
Has intermediate experience with Linux and is able to troubleshoot issues
Understands why we need to test code and has implemented tests
Able to understand/discuss design and performance trade offs in complex systems
Job Classification
Industry: InternetFunctional Area / Department: Engineering - Software & QARole Category: Software DevelopmentRole: Software Development - OtherEmployement Type: Full time