Position: Senior PHP Developer
Company: ELEKS
Category: PHP
Experience required: 3y
English level: intermediate
Published: 2021-09-01T00:00:00+03:00

**ABOUT CLIENT**
This is a German-based project, event management, and marketing platform (create an event with different categories, sell tickets, gather analytics, and provide feedback to organizers). Our client works with big companies that organize conferences, fairs, and other corporate events.

**REQUIREMENTS**
- 4+ years of experience in backend development
- Strong knowledge of PHP 7.3, OOP
- Database optimization, in particular, MySQL 5.7
- REST API
- Code optimization for performance
- Key-value stores/NoSQL such as Dynamo DB

**WILL BE A PLUS**
- Knowledge of Zend2 Framework, composer
- Experience with Amazon Web Services, AWS SDK + S3, SQS
- Payment API (PayPal)
- PHPUnit
- Swagger schema/documentations
- Propel ORM
- Google Analytic API
- Microservices understanding

**RESPONSIBILITIES**
- Develop solutions and algorithms according to technical specifications or other requirements documentation; use standard algorithms in the applicable cases
- Write program code according to the defined application architecture
Possess knowledge of software development methodologies (Waterfall, Agile, etc.)
- Structure and format the source code, comment and mark up the code, as well as name variables, functions, classes, data structures, and files according to the company conventions and industry best practices
- Implement code refactoring and optimization methods. Post refactoring and optimization results to the collective knowledge base as the best practices
- Modify existing software code and test its availability. Analyze software code compliance with readability and performance standards
- Use version control systems to track code optimization progress, as well as to merge or split code entities. Commit changes according to version control rules
- Perform analysis, verification, and debugging of the software code at the level of application units
- Develop procedures to test code availability, collect diagnostic data, generate test data sets with desired characteristics; examine the required software characteristics, etc
- Reproduce defects logged in the defect database, establish their causes, and modify code to eliminate defects
- Determine software product compliance with the technical requirements
- Collect and analyze results of software tests. Deliver correct interpretation of diagnostic data; analyze the significance of the obtained software characteristics; can document test results. Assess software product availability
- Develop, document, and edit programming interfaces, software modules and components assembling procedures, software deployment, and update procedures as well as data migration and transformation (conversion) procedures
- Assemble software modules and components into software product; connect software products to the external environment. Test availability of software product versions
- Analyze variants of software requirements implementation; evaluate their time consumption and workload. Conduct assessment and justification of the solutions recommended for software requirements implementation

**WHAT WILL YOU GET WITH ELEKS**
- Above average compensation and competitive Social package
- Close cooperation with a customer
- Challenging tasks
- Competence development
- Ability to influence project technologies
- Projects from scratch
- Team of professionals
- Dynamic environment with low level of bureaucracy
- Medical insurance