PHP Backend Developer

you are looking for!

My approach to work is 

logic

,

quality

 and 

security

.

 Hello! My name is Patrick Nehls  and I am a PHP backend developer (with strong security affinity and a great database background) from the beautiful city Hamburg in Germany. I have been working as a developer on different programming languages and as database administrator on different database systems for more than 28 years. I believe in code quality, great data models and secure programming. My focus is on PHP and MySQL.


I really love to produce maintainable, usable, efficient, functional, and reliable code and/or systems ensuring confidentiality, integrity and availability of data.

WHAT DO I DO

In more than 28 years of business I was able to work with many programming languages (Assembler, BASIC, Bash, C, C++, Clipper, Cobol, Delphi, Java, JavaScript, Pascal, VBA), database systems (AzureMySql, AzureSQL, Clickhouse, dBase, Microsoft Access, Microsoft SQL Server, Microsoft Visual FoxPro, MongoDB, Oracle, Paradox, PostgreSQL, Prometheus, Redis, SQL Anywhere/Sybase), Operating systems (Linux,  Unix, Windows) and network components (Appliances, Firewalls, Load Balancers, Security Scanners, Switsches).


My focus, however,  is clearly on the following 3 roles

  • Senior Backend Developer PHP
  • Senior Database Developer (SQL) and Senior Database Administrator (MySQL) 
  • Software Security Champion.


When working with PHP  and SQL these are my topics:

When working with PHP  and SQL these are my topics (in alphabetical order)

  • Code reviews (PHP, SQL; pull requests, audits, concepts, ...)
  • Coding concepts (SOLID, KISS, DRY, Clean Code, ...)
  • Coding guidelines (prepared statements, parameter validation, invariants, ...)
  • Comments in English or German
  • Coaching (PHP, data modelling, secure programming, IT security)
  • Consulting on best approaches
  • Dependecy management (Composer, semantic versioning, Satis, libraries)
  • Frameworks (Laravel, Lumen, Symfony, Smarty, ...)
  • Internet technologies (DNS, Firewalling, FTP, HTTP, IMAP, REST, SMTP, SSH, SSL/TLS, TCP/IP)
  • Monitoring (alerting, metrics, Prometheus, Grafana, ...)
  • MySQL (5.x, 8.x, MariaDB, master-master active-active, sharding, user management, deployments, backup, ...)
  • PHP source code (PHP 5.x, 7.x, 8.x)
  • PHPDoc (PHPStan extended)
  • PHPStorm (inspections, quality tools, remote interpreters, ...)
  • Pipelines (Jenkins, Bitbucket, Build pipelines, Deployment pipelines, ...)
  • RESTful APIs (Swagger OpenAPI, ...)
  • Style guidelines (Naming conventions,  PSRs, ...)
  • Scrum (JIRA)
  • Secure programming (GDPR, encryption, injections, constraints, invariants, assertions, validations, hashing, encryption, ...) 
  • Source code versioning (Git, Bitbucket, SourceTree, Gitlab)
  • SQL queries (MySQL 5.x, 8.x, performance optimization, ...)
  • SQL data models (MySQL 5.x, 8.x, normalization, performance optimization, security, event-sourcing, CRQS, CRUD, ...)
  • Unit Testing (code coverage, inspections, PHPStan, PHPUnit, ...)
  • Virtualization (Docker, VirtualBox)

WHAT I DO NOT DO

  • I am not a happy path programmer. Producing non-testable codes or coding without unit tests feels very wrong to me.
  • If I find an implementational bug I will fix it and do not create tickets for future tasks. This does not apply to conceptional bugs.

OFFER OF CHALLENGE

Interested? I am ready for any challenge!

Let me review a small piece of code or a small piece of a query or data model script, and I will return my comments as an example of my work.