Table of Contents
Reply content:
Face yourself and recognize yourself
Home Backend Development PHP Tutorial Career planning - I have been doing PHP for 2 years, and I feel that I have encountered a bottleneck in the business direction and technical direction.

Career planning - I have been doing PHP for 2 years, and I feel that I have encountered a bottleneck in the business direction and technical direction.

Jul 06, 2016 pm 01:52 PM
php career planning

The original poster has been doing PHP development for 2 years. I have used the ecstore ecshop thinkphp Yii2 framework.
I have written API interfaces for H5 apps and done secondary development.
I have also read the source code of thinkphp lazyphp initphp framework. , I am also familiar with the workflow and principles of the framework
. Nowadays, it is difficult to improve my technology accumulation and business accumulation. I wanted to learn node.js
but I am not very interested in js. I usually work I also use the jquery library a lot, but native js
less. Now I don’t know what to do? Technical things are being updated significantly every year, and I’m a little afraid
that I will fall behind in 3 or 5 years. .Now I feel that apart from not being able to write PHP extensions, I have learned all the other aspects
and there is nothing to learn (the original poster is a very arrogant and proud person). As for the configuration of nginx and apache mysql, I don’t know anything about it. Redis mogodb ssdb Such a
key-value cache system, what kind of distributed, centralized, design model, separation of reading and writing, one master and multiple slaves, multiple masters and multiple slaves
, separation of dynamic and static, cdn acceleration, git is also similar I don’t understand, I can only use js plug-ins but don’t understand the principles at all, and I have a little knowledge of the http protocol
The concept of front-end and back-end separation is also vague. Whenever I make something in the company, I like to be complacent and have a sense of accomplishment. Little do you know that these little things are not worth mentioning in front of you. Saying it will only make everyone laugh. I don’t want to hang around, what should I do?

This question has been closed due to non-technical discussion

Reply content:

The original poster has been doing PHP development for 2 years. I have used the ecstore ecshop thinkphp Yii2 framework.
I have written API interfaces for H5 apps and done secondary development.
I have also read the source code of thinkphp lazyphp initphp framework. , I am also familiar with the workflow and principles of the framework
. Nowadays, it is difficult to improve my technology accumulation and business accumulation. I wanted to learn node.js
but I am not very interested in js. I usually work I also use the jquery library a lot, but native js
less. Now I don’t know what to do? Technical things are being updated significantly every year, and I’m a little afraid
that I will fall behind in 3 or 5 years. .Now I feel that apart from not being able to write PHP extensions, I have learned all the other aspects
and there is nothing to learn (the original poster is a very arrogant and proud person). As for the configuration of nginx and apache mysql, I don’t know anything about it. Redis mogodb ssdb Such a
key-value cache system, what kind of distributed, centralized, design model, separation of reading and writing, one master and multiple slaves, multiple masters and multiple slaves
, separation of dynamic and static, cdn acceleration, git is also similar I don’t understand, I can only use js plug-ins but don’t understand the principles at all, and I have a little knowledge of the http protocol
The concept of front-end and back-end separation is also vague. Whenever I make something in the company, I like to be complacent and have a sense of accomplishment. Little do you know that these little things are not worth mentioning in front of you. Saying it will only make everyone laugh. I don’t want to hang around, what should I do?

When similar questions are asked, I have a strong desire to answer them carefully. But when the question is asked in such a way, I just want to rant

The subject’s situation is completely a psychological problem. While saying that I have learned too much, I actually understand in my heart这些小东西在你们面前根本不值一提说出来只会让大家笑掉大牙. While saying that it is difficult for me to improve, I can also list a lot of things worth learning and understanding 似懂非懂, 只会用根本不懂原理. To put it bluntly, this situation is called savviness. You clearly know that your skills are poor and you are too lazy to learn, but you still anesthetize yourself with the idea that "you have learned too much and it is difficult to improve."

So I only have one suggestion:

Face yourself and recognize yourself

There are so many built-in functions in PHP that you can never say that you know them all, let alone being proficient in using them to solve problems. There are so many extensions in PHP that you can never say that you know how to use them and you can understand each of them. The meaning of the parameters. I have been working on PHP for ten years and I still dare not say that I am proficient in it. My friend, there is no limit to learning!
Most people who engage in programming, and even people in other industries, tend to make a mistake. They just think they can do it, and don’t expect to be perfect. But there is no knowledge in this world that can be touched upon. It's a bit like digging a well. If you always dig shallowly and can't see any water, you feel there's no need to dig deeper, so you dig somewhere else. This kind of person can hardly see water flowing out even if you dig the ground into a sieve. I see that you have mentioned so many concepts, and I guess you only know the surface of each concept but not the depth, so what is the use of learning it.

As for nginx, I don’t know anything about the configuration of apache mysql, redis mogodb ssdb, such a
key-value cache system, what kind of distributed, centralized, design mode, read-write separation, one master, multiple slaves, multiple masters More from
, separation of dynamic and static, cdn acceleration, git is half understood, js plug-in can only be used and the principle is not understood at all, http protocol is also half-understood, and the concept of front-end and back-end separation is relatively vague,

Now you can start learning relevant knowledge based on the nouns in this passage

During the bottleneck period, breakthrough means qualitative improvement, otherwise we will always be here.

There are no shortcuts. I suggest you change your mind and learn a new language or technology. Use java, try nodejs, try ruby ​​on rails (the idea of ​​​​this is really great, after learning it you will understand why laravel is so good). Or play with Adruino and Raspberry Pi, in general, to stimulate yourself to keep improving. I have a similar feeling to you... If you really can't find the passion for technology... then this path may really not be suitable for you.

I think you should consider changing careers as soon as possible.

After reading your description, I don’t think you have finished learning PHP. Have you ever written your own framework? Just reading the source code of other frameworks is not enough. You can only design the architecture and implement a framework by yourself. It can be considered that you can barely enter the ranks of senior PHP engineers. Then if you can write an open source PHP framework that is used by more than a thousand people, it will be considered a step up. The road after that will be even longer, just two years. I have experience in PHP development. After reading some framework source code, I would be a bit impetuous if I said that I have learned PHP to the end.

Thanks for the invitation. You need to study carefully and calmly. It's not that you encounter a bottleneck, but that you are impatient.

The best language is not for you

We are almost the same. I have been working for nearly 3 years. I have played with all the nginx, redis and database things you mentioned. Now switch to node.js. To be precise, react, these things. It feels like I have a new way of thinking, which is quite fresh.

Personally, I think you can start from the following points:
1. Learn C language and data structure. After all, these two are the basis of many languages.
2. Learn mysql, sql optimization and database management.
3. Learn Redis in depth and MongoDB, a database based on distributed file storage.
4. Learn Nginx and Apache in depth.
5. Participate in open source projects.
6. Get more exposure to high-concurrency scenarios and solutions.
7. Learn languages ​​other than PHP, such as Python, Ruby, etc.

Learn Linux, write your own PHP framework, design patterns...

No wonder the recruitment requirements now state that they require two years of PHP work experience. Those with less than two years and more than 6 years are not required.
In the foreseeable 3-5 years, front-end solutions such as angularjs/react/vue can be solved The solution will replace the working background of the PHP backend template and only need to output json api. In the network environment where more and more mobile terminals are connected to the network and the amount of concurrency is increasing, the api made by nodejs/golang/java It is obviously better in performance and maintainability than PHP, so if you only write PHP, no company will use PHP that is more than 6 years old

You will know where you fall short if you go to a big company

Learning Linux, very interested

I have also been working in PHP for two years. Maybe I am not as proficient in PHP as you are, but I feel that I have to learn too many things to do PHP. First of all, I know a little about lamp configuration, mysql optimization, and nginx configuration, but I can’t say I am proficient in them. . I've been learning JavaScript recently, and I feel that full stack is my direction.

I suggest you find some open source projects to work on first, see where your strengths and weaknesses are, and then make further plans.
For example, I have an open source project of my own that is short of manpower. I welcome you to participate in the development.

Oh my god
I don’t understand linux nginx mysql git redis
How dare I say I’ve learned too much?
Although these are not PHP’s own technologies, doing PHP development means dealing with these
In addition, I don’t believe that the original poster can completely understand laravel

My personal situation is probably a bit similar to that of the original poster. I usually do secondary development more often. I am proficient in using the company's products for secondary development, but I know it but don't know why. I am stuck at a stage that needs to be improved to a higher level. Now I plan to Let’s learn about design patterns

Do you know the following?

<code>基础:HTML教程,PHP 教程

进阶:SQL 教程,MySQL 教程

高级:正则表达式教程,Mongodb教程,AJAX 教程,JSON 教程,XML 教程,消息队列,全文检索

http://www.rm5u.com/more/study-path/</code>
Copy after login

Wow, I didn’t expect that someone would answer this kind of question only>.<

Haha, I feel like the original poster is here to be cute.

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

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
1 months ago By 尊渡假赌尊渡假赌尊渡假赌

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)

PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

Discuss CakePHP Discuss CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP is an open-source framework for PHP. It is intended to make developing, deploying and maintaining applications much easier. CakePHP is based on a MVC-like architecture that is both powerful and easy to grasp. Models, Views, and Controllers gu

CakePHP File upload CakePHP File upload Sep 10, 2024 pm 05:27 PM

To work on file upload we are going to use the form helper. Here, is an example for file upload.

How To Set Up Visual Studio Code (VS Code) for PHP Development How To Set Up Visual Studio Code (VS Code) for PHP Development Dec 20, 2024 am 11:31 AM

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

How do you parse and process HTML/XML in PHP? How do you parse and process HTML/XML in PHP? Feb 07, 2025 am 11:57 AM

This tutorial demonstrates how to efficiently process XML documents using PHP. XML (eXtensible Markup Language) is a versatile text-based markup language designed for both human readability and machine parsing. It's commonly used for data storage an

CakePHP Quick Guide CakePHP Quick Guide Sep 10, 2024 pm 05:27 PM

CakePHP is an open source MVC framework. It makes developing, deploying and maintaining applications much easier. CakePHP has a number of libraries to reduce the overload of most common tasks.

PHP Program to Count Vowels in a String PHP Program to Count Vowels in a String Feb 07, 2025 pm 12:12 PM

A string is a sequence of characters, including letters, numbers, and symbols. This tutorial will learn how to calculate the number of vowels in a given string in PHP using different methods. The vowels in English are a, e, i, o, u, and they can be uppercase or lowercase. What is a vowel? Vowels are alphabetic characters that represent a specific pronunciation. There are five vowels in English, including uppercase and lowercase: a, e, i, o, u Example 1 Input: String = "Tutorialspoint" Output: 6 explain The vowels in the string "Tutorialspoint" are u, o, i, a, o, i. There are 6 yuan in total

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,

See all articles