PHP Developer

Job description

We are looking for experienced PHP developers for backend programming tasks. You will support our new developments on the backend side, as well as maintain our existing systems in a modern, microservice-based (SOA) architecture.

  • Development of PHP microservices
  • Writing high quality, reusable, „clean” code
  • Writing tests
  • System designing
  • Recognizing and fixing architecture related issues, performance optimization
  • Database designing
  • Database query optimization

What we offer

  • Competitive salary based on experience and knowledge & fringe benefits
  • Home office/remote work with flexible working hours
  • Professional development within an international, technology and people focused company
  • Combining the advantages of a big company (stability) and a startup
  • Working with cutting edge technologies
  • Various projects and possibility of changing projects within the company depending on your interest
  • Small teams where all team members are actively involved in the decision making process
  • Low stress environment and predictable workflows
  • Professional in-house workshops, trainings and individual English course
  • Modern tools (Docker, AWS, TypeScript)
  • Atlassian (Jira, Bitbucket, Confluence) and Jetbrains tech stack
  • All You Can Move sport pass or Medicover private health insurance, monthly team building budget and quarterly company events
  • We trust each other and we expect independence, but we don't micromanage



Job requirements

General software developer skills

  • Algorithmic complexity, basic algorithms
  • Memory management fundamentals (heap, stack)
  • Exception handling
  • Clean code concepts
  • Understanding of the more frequently used UML diagrams (class diagram, activity diagram, deployment diagram)
  • User-level experience with Linux (SSH, Bash, permission management)
  • Git fundamentals:
    • Commit, push fetch
    • Branches; creation of merge commits

Object oriented programming

  • OOP fundamentals, polymorphism, abstraction
  • Design patterns: MVC, Dependency Injection, Adapter, Factory
  • SOLID concepts

PHP knowledge

  • Experience in at least one modern PHP framework (eg. Symfony, Laravel, Yii)
  • Experience in a modern templating system (eg. Twig)
  • Experience in a modern ORM solution (eg. Doctrine, Eloquent)
  • Types, type juggling
  • Comparison operators
  • Understanding of the basic LAMP stack
  • PHP OOP quirks & features
  • Error handling
  • Performance optimization techniques and tools

Databases

  • Database anomalies, normal forms, normalization
  • Entity-Relationship diagrams (design and reading)
  • Foreign keys, unique keys, contraints
  • Indexes
  • Concurrent data handling anomalies, transactions
  • Writing complex SQL queries
  • Optimizing SQL queries for performance

Advantages

  • Experience with Redis, Memcached, Elasticsearch
  • Experience in unit testing (eg. PHPUnit)
  • Experience in functional testing (eg. Behat)
  • Good knowledge of PHP extensions (eg. GD, bcmath, mbstring)
  • Web services (eg. SOAP, JSON REST)

Soft Skills

  • Intermediate level English (written, spoken)
  • Good communication skills
  • Proactive, solution oriented approach
  • Willingness to work in a team