The Company:Oro, Inc. is a software development company based in U.S. and focused on open source business applications development. We started in late 2012 and today our team have grown to 175+ players who bring the cutting edge technical expertise in web application and business software development and integration.As a product company, we focus on the development of Oro suite open source software solutions for multi-channel businesses:OroPlatform – A business application platform that helps companies accelerate their custom business application development. OroPlatform is used as a baseline for all Oro products.OroCRM – A CRM solution for multichannel companies, with built-in marketing tools.OroCommerce – An eCommerce platform purpose-built for B2B companies.Technology-wise, Oro uses JS + PHP + Symfony full-stack framework and some of the cutting edge technologies (docker-based deployment, CI, MQ, ElasticSearch, etc.).Learn more about what our growing and innovative team is accomplishing at www.oroinc.com.
Responsibilities:Develop OroPlatform, OroCRM and OroCommerce as:* OpenSource solutions available on GitHub for community developers* Enterprise solutions supporting Big Data and High Availability for our partners and clientsUse relevant open-source solutions for PHP, such as Symfony, Doctrine, Twig, Oro components and other leading technologies.Study the business cases of the product, assess clients’ needs, plan and evaluate stories alongside your team and the Product Owner.Work in Agile environment using SCRUM.Develop components architecture and interaction, allowing for maximum flexibility and customization by third-party developers, as well as be responsible for your components as a Component Lead.Work with an extensive code base, improve and refactor the existing components using the best refactoring practices and well known principles in software development, like SOLID and GRASP, as well as maintain high quality of the code.Ensure performance (Blackfire) and scalability of the components when deploying Oro applications in OroCloud.Test your code using PHPUnit, functional (Symfony’s Web TestCase) and integration (Behat) testing, implement best Continuous Integration practices (Jenkins, Docker, GCP).Improve Oro products, communicating with the community, partners and clients and helping them achieve their goals using Oro products.Use every opportunity for knowledge sharing, continuous learning and improvement.Requirements:Must have:Good object-oriented design (OOD) skills.Strong knowledge of PHP.Strong knowledge of SQL and MySQL or PostgreSQLExperience in database design.Experience in Laravel and/or Symfony web-frameworksExperience with PHPUnit.Knowledge of HTML, CSS, JavaScript.Basic knowledge of JSON: API and REST.Good communication skills.Nice to have:Experience with Symfony, Laravel or Zend frameworks.Hands on experience with practices such as continuous integration, planning and code analysis.Experience with Magento.Experience with CRM and eCommerce systems.