Table of Contents
Competencies that a mid-to-senior PHP engineer should have" >Competencies that a mid-to-senior PHP engineer should have
Home Backend Development PHP Tutorial Ability that an intermediate to senior PHP engineer should possess

Ability that an intermediate to senior PHP engineer should possess

Jun 29, 2018 pm 05:29 PM

Competencies that a mid-to-senior PHP engineer should have

Many interviews and many personnel competency requirements have the words "PHP senior engineer", if you If you really like PHP and you are just starting out, then I will briefly talk about what a senior PHP engineer should have, hoping to give some help to junior or intermediate PHP engineers.

1. Calm mentality

Like all programmers, writing good programs is impossible without a good mentality.
Don’t be impatient when encountering problems, and don’t give up easily.
In the process of program development, especially junior and intermediate programmers, the programs or structures written will encounter many problems. Some of them are relatively weak, and some problems have not been encountered at all, so don't be too impatient and should Track down the original source of the problem one by one and eliminate them. Developing the system with an impatient attitude is irresponsible for the project. Impatience will make people learn to make do, and people will learn to escape. My two years of simple life in Beijing have given me one of the biggest experiences: my mentality has become calmer.
I believe that this kind of mentality will also help your ability to deal with other aspects.
Why I include mentality among them, I want to explain: It is different from the sales function, which requires a lot of passion, but requires quiet thinking.


2. A familiar set of problem-solving ideas

A program development colleague once wrote in his QQ signature: Every time a bug is solved , just give yourself a boost. Indeed, programmers who have not really solved countless bugs or problems cannot be called experts or senior programmers. A senior programmer constantly exercises himself through this problem-solving process and forms a set of familiar problem-solving ideas, which requires him to be strong.
I will also briefly talk about some problems that PHP programmers often encounter when they grow up. If you have never encountered any or rarely encountered them, then you are one of the two extremes: either a beginner or an advanced person. ,Ha ha.
1, Encoding problem
2, PHP and SQL database execution efficiency problem
3, Session and Cookie domain and encryption parsing problem
4, Program execution order problem
5, Program writing Multi-environment applicable issues
6, classification construction and structural design issues
7, string processing issues: regular expression processing or simple PHP string processing functions
8, preparation of various template engines Limitation issues
9, PHP and web-side data interaction issues (such as ajax, interface calls, etc.)

3. Excellent basic PHP knowledge
There is no excellent PHP foundation Knowledge, no matter how good your mentality is, no matter how strong your problem-solving ability is, you can only talk about it on paper.
Excellent basic knowledge will make you comfortable in the project development process.
I will also briefly talk about the basic knowledge that PHP engineers should have (in fact, these are very common in recruitment requirements):
1. Grammar rules, I won’t talk about this. If you don’t know this, you won’t get started. Hurry up and buy a book or find a website to supplement
2, how to write various SQL statements in MYSQL, not to mention the basics of addition, deletion, modification and search, in(), union, left(), left join, as, replace, alter You must be particularly familiar with field sorting of table and where, and various index creation methods
3. You must be able to build your own LAMP environment and WAMP environment. One-click installation with integrated software does not count. When developing a program, I don’t know the structure of the environment I developed. How can I troubleshoot problems? So you must at least be able to use the corresponding msi file to install the development environment you need. After 3-5 successful installations, this is considered ok. You must also be able to install various extensions, configure the apache service, know where and how to set various parameters, and know the basic commands of the Linux operating system.
4. Be familiar with other programs on the web, because PHP is not a completely independent thing. It is used in conjunction with other languages ​​​​and elements to complete a project. If you are not familiar with other languages ​​​​and elements, during the team collaboration process The meeting was very difficult. These other elements include: html, javascript, jquery, xml, http protocol, regular expressions, etc.

4. Comprehensive Internet application and project management knowledge and literacy

1, knowledgeable and good at learning
If you only focus on your own research and don't look at and learn from other people's practices, you will be like a frog at the bottom of a well, unable to see the vast sky; therefore, don't just focus on programming every day, learn to Take some time to look at the architectural ideas of some large open source systems and how to build large business websites. Learn from them and make up for your own shortcomings.
For example, you should at least know what different types of open source systems are, such as Uchome, dede, phpcms, wordpress, discuz, empire, etc.
If you read more, you will also summarize and discover some general ideas, such as caching Mechanisms, such as template mechanisms, such as static page generation, etc.

2. Project solution selection
Different needs require different organizations and selections. It is often said that "water comes to cover, soldiers come to block it." Some architectures are powerful, but they will also be very difficult to use in small projects. It is important to choose based on your needs.
Selection cannot be made casually. A PHP programmer needs to have good reserves. I personally feel that at least the following reserves are needed to have the ability to select:
Proficient in applying at least one PHP framework, two or three PHP open source system; has its own set of application systems.

3. Good project management literacy
The project is not always in the development process. The project will also enter the operation period and maintenance period. In this way, having good project management literacy will make the project more stable and controllable.
Good project management literacy includes:
Good project development and maintenance habits, remember: Never cause repeated work in the future just to save temporary effort. Always remind yourself to streamline your work, plan your processes, and simplify your standards.
Good awareness of multi-person cooperation management: The project does not belong to one person, it is the product of multi-person collaboration, and it also serves the public. Therefore, it is necessary to enhance the awareness of collaboration and let relevant personnel work together to improve the project.

4, rich experience in project development and application
Learning theory and taking exams or assessments are a matter of school. Without project experience, it is like a stomach full of scriptures, and it is difficult to spit out.
This requires actual projects to learn to transform their own knowledge into demand realization.

5, good development practices
Strong code readability: comments on objects, methods, and functions; a set of mature naming conventions;
Low code redundancy: reuse of programs and files Large flexibility, high cohesion, low coupling
High execution efficiency: Use the simplest program flow to achieve application requirements, do not disturb big twists
Good code security: Be a vigilant programmer, any user input You must be extra cautious when uploading files. A programmer's momentary negligence may cause a system to crash in an instant.

In addition, a few more nonsense words, PHP senior engineer, in fact, it is not difficult for someone who can persist a little and like PHP; the difficult thing is to learn to use tools to realize ideas, whether it is your own ideas or Learn to transform the needs of others.
In this way, you might as well learn more about the trends in Internet development, project development management processes, etc.

Extended reading: https://www.zhihu.com/question/20232930 (What senior PHP programmers need to master Skills?)

Related recommendations:

Detailed explanation of code to implement mysql connection pool effect in php

##PHP CURL and Detailed explanation of how to use java http

PHP WeChat development WeChat recording temporary conversion to permanent storage PHP skills

The above is the detailed content of Ability that an intermediate to senior PHP engineer should possess. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How does session hijacking work and how can you mitigate it in PHP? How does session hijacking work and how can you mitigate it in PHP? Apr 06, 2025 am 12:02 AM

Session hijacking can be achieved through the following steps: 1. Obtain the session ID, 2. Use the session ID, 3. Keep the session active. The methods to prevent session hijacking in PHP include: 1. Use the session_regenerate_id() function to regenerate the session ID, 2. Store session data through the database, 3. Ensure that all session data is transmitted through HTTPS.

Explain JSON Web Tokens (JWT) and their use case in PHP APIs. Explain JSON Web Tokens (JWT) and their use case in PHP APIs. Apr 05, 2025 am 12:04 AM

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

How to debug CLI mode in PHPStorm? How to debug CLI mode in PHPStorm? Apr 01, 2025 pm 02:57 PM

How to debug CLI mode in PHPStorm? When developing with PHPStorm, sometimes we need to debug PHP in command line interface (CLI) mode...

Describe the SOLID principles and how they apply to PHP development. Describe the SOLID principles and how they apply to PHP development. Apr 03, 2025 am 12:04 AM

The application of SOLID principle in PHP development includes: 1. Single responsibility principle (SRP): Each class is responsible for only one function. 2. Open and close principle (OCP): Changes are achieved through extension rather than modification. 3. Lisch's Substitution Principle (LSP): Subclasses can replace base classes without affecting program accuracy. 4. Interface isolation principle (ISP): Use fine-grained interfaces to avoid dependencies and unused methods. 5. Dependency inversion principle (DIP): High and low-level modules rely on abstraction and are implemented through dependency injection.

How to automatically set permissions of unixsocket after system restart? How to automatically set permissions of unixsocket after system restart? Mar 31, 2025 pm 11:54 PM

How to automatically set the permissions of unixsocket after the system restarts. Every time the system restarts, we need to execute the following command to modify the permissions of unixsocket: sudo...

Explain late static binding in PHP (static::). Explain late static binding in PHP (static::). Apr 03, 2025 am 12:04 AM

Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead.

How to send a POST request containing JSON data using PHP's cURL library? How to send a POST request containing JSON data using PHP's cURL library? Apr 01, 2025 pm 03:12 PM

Sending JSON data using PHP's cURL library In PHP development, it is often necessary to interact with external APIs. One of the common ways is to use cURL library to send POST�...

See all articles