Job Description:
· A Principal Engineer/Architect is a hands-on, talented,innovative, and practical individual with functional experience to design,implement and support products and product components on predictable schedule.
· Capable of working under minimal direction and exercisingconsiderable latitude, they will provide technical expertise in developingsolutions to complex software engineering problems, which require frequent useof ingenuity and creativity.
· Experienced in designing application-focused solutions,performing architectural analysis, and identifying issues and providingsolutions for the business problems.
· Sound functional knowledge of enterprise applicationarchitecture in the Spend Management domain including Procurement, Sourcing,and Financial Transaction Processing.
· Work in an agile environment where quick iterations and goodfeedback are a way of life.
Responsibilities:
· Lead the design and development of new architecture and majorfunctional upgrades for themost advanced capabilities of the Coupa SupplierApplications.
· Build solid expertise of the entire Coupa application suiteand leverage this knowledge tobetter design application and data frameworks.
· Wide knowledge of architecture standards and patterns, apassion for advocating their correct usage and excellent communication skills(written and verbal).
· Document the solutions leveraging existing standards andcreate new templates where required; present them to project-specific governingbodies for review and approval. Consulting skills are imperative to gainconsensus on solutions proposed.
· Work alongside Engineering and Product leadership teams toreview and/or create the feature designs for the major releases and alsoparticipate in defect analysis for maintenance releases to ensure the robustfunctional resolution to the customer-facing issues.
· Provide technical guidance and mentorship to developers andproduct teams.
· Engage cross-organizational teams such as Product Management,Integrations, Services,Support, and Operations, to ensure the success ofoverall software development,
Requirements:
· Master’s (preferred) or bachelor’s degree in computer science,information systems, computer engineering, systems analysis or a relateddiscipline, or equivalent work experience.
· 8+ years of experience developing and designing for amulti-tenant system.
· 5+ years defining high-level design for one or more businessdomains.
· 5+ years of experience interpreting and predicting outcomesof existing business processesand current technology solutions.
· Broad knowledge of middleware/application integrationproducts.
· Demonstrated proficiency in understanding and executing enterprisearchitecture and software development life cycle methodologies.
PreferredExperience:
· Experience in building large scale business applications.
· Experience developing with containers, micro-services andmessage queues.
· Experience with refactoring and modularizing legacyapplications.
· Experience designing solutions with heterogeneous technologystacks.
· Dealt with database performance issues and query optimizationin MySQL.