Principal Engineer

  • Full-time

Company Description

AgriAku is a leading technology-based local agribusiness company in Indonesia. Launched late last year, AgriAku's mission is empower mitra through sustainable, inclusive and profitable technology business models.

We are here to provide services for the needs of saprotan (sarana produksi pertanian) or agricultural production facilities that can be ordered through the application, anytime and anywhere with ease.

Job Description

  • Guide the definition and improvement of our internal standards for style, maintainability, and best practices for a high-scale environment. Maintain and advocate for these standards through code review.
  • Collaborates and makes proposals across several teams on their engineering work, and helps their team members make informed decisions in alignment with the sub-department strategic plans.
  • Mentor, grow, and provide advice to other domain experts, individual contributors, across several teams in their sub-department.
  • Play a central role in technical, business, and organizational contributions affecting all departments.
  • Help to solve technical problems of the highest scope, complexity, and ambiguity for their sub-department.
  • Proposes initial technical implementation which supports architectural changes that solve scaling and performance problems.
  • Help in hiring and scaling the teams.
  • Be an inspiring role model software engineers want to follow. leads by example and influences not only engineers but also product people, upper management and business stakeholders.
  • Actively seek out difficult impediments to our efficiency as a team, propose and implement solutions that will enable the entire team to iterate faster.
  • Exert significant influence on the overall objectives and long-range goals of your team.
  • Provide mentor in engineering best practices to help engineers grow in their technical responsibilities and remove blockers to their autonomy, including agile development methodologies, service architectures, and design patterns.
  • Write clean, maintainable, documented code using best engineering practices in the industry (design patterns (OOP, SOLID, etc), TDD, peer review, CI, automated testing etc.).
  • Able to decide and implement the most suitable architecture for a particular usecase.
  • Able to design systems by considering the function of each domain and the tradeoffs

Qualifications

  • Solid experience with Golang (understand how the Go runtime works, experience on debugging minimal 3 years)
  • 5+ years of extensive, hands-on development experience with Microservices Architecture.
  • Excellent written and oral communication skills with the ability to talk up and down the business i.e. across different stakeholders (technical and non-technical)
  • Experienced with OOPs, microservices(SOA) architecture, CI/CD best practices
  • Experience with large and complex scale systems
  • A Bachelor's Degree/Diploma in Computer Science, Information Technology or a related subject
  • Experienced in test driven development, continuous integration and continuous delivery.
  • Deep knowledge in software design principles and their practical uses (OOP, SOLID, etc).
  • Proven track record of leading big project, company wide scale project.
  • Familiar with modern architectural patterns of highly scalable systems like horizontal scaling and queueing systems
  • Familiar with domain driven design, hexagonal and clean architecture.
  • Has a pragmatic mindset and able to choose solutions based on business needs
  • Strong problem solving and troubleshooting skills
  • Life-long learner mindset, with avid attention to new technology stacks, tooling and engineering trends

Additional Information

  • Hybrid working options during the COVID-19 pandemic (i.e. working from home and within the main Jakarta office).