Skills needed by software development engineersDifferent types of software development engineers required different skills:
** 1. Java Development Engineer **
1. ** In terms of framework **: You need to master mainstream distributed microservice framework such as Dubbo and SpringCloud.
2. ** In terms of components **: Master the common usage of distributed components such as Redis, MongoDB, and RabbitQQ.
3. ** In terms of database **: Master the usage of Mystical and other mainstream database, and be familiar with the principle of sub-database and sub-table and Sharding-jdbc.
4. ** Multi-thread and performance **: Master multi-thread and high-performance design, coding, and performance tuning.
5. ** Operating System and Tools **: Master the use of the Linux-based operating system and the git command.
** 2. C++ Development Engineer **
1. ** Protocol-related **: Familiar with the common Internet protocol, such as <anno data-annotation-id ="00000000 - 4c50 - 4c50 - 4c50 - 9c33 - 8c3333c33333"></anno>, and the RESTful specifications.
2. ** In terms of environment and tools **: Familiar with the Linux-based environment and familiar with common debugging and analysis tools, such as GDB, IOSTAT, and blktrace.
3. ** In terms of programming language **: Familiar with C++ programming language, master multi-thread, multi-process, memory sharing, and network communication programming techniques.
4. ** In terms of architecture and design **: Familiar with commonly used software architecture patterns, familiar with object-oriented development and design methods, familiar with storage systems, Linux-based operating systems, and file storage.
** 3. Php Development Engineer **
1. ** Language **: Proficient in the Python language and object-oriented programming.
2. ** In terms of framework **: Proficient in Thinkphp5 and the Python development framework.
3. ** Front-end and database aspects **: Familiar with Git operations, familiar with front-end technologies such as JquerMobile, SSS, Xml, AJX, and javelin; familiar with uniapp and vue; proficient in MysQL database and application development based on database.
4. ** In terms of optimization and system development **: Knowledge of query optimization, storage optimization, Python buffer technology, static design, website front desk system development, and event channel system development.
5. ** Other aspects **: Familiar with open source tools such as cloud computing architecture, priority given to the code generation mechanism, familiar with some commonly used commands of Linux-based operations, and understand the basic operation and maintenance work of Linux-based operations.
** 4. C. Development Engineer **
1. ** Language development **: Proficient in C, Pro*C language development.
2. ** In terms of database **: Proficient in Oracle database development technology.
3. ** Middlewares **: Understand current mainstream middlewares such as Tuxedo and Weblogic.
4. ** Operating System **: Familiar with the basic operations of Linux-Unix and writing shell scripts.
** 5. C#Development Engineer **
1. ** In terms of object-oriented development **: Proficient in C#object-oriented development, proficient in. net and. netcore development.
2. ** Technology Development **: Proficient in ASP.Net,. netcore, MVP, and Webapi development technology.
3. ** Multi-thread **: Familiar with. Net multi-thread development.
4. ** Message queuing **: Familiar with Kafka, MQTL, and rabitEQ message queuing.
5. ** In terms of database language **: Proficient in the database language, sql.
6. ** Video protocol **: Understand or be familiar with video protocol onvif, RTMP, rtsip, and HLS.
** 6. Python Development Engineer **
1. ** Basic **: Basic data structure, algorithm, and programming skills.
2. ** Language **: Proficient in Python programming language.
3. ** Databank **: Familiar with the Relational Databank.
4. ** In terms of environment and tools **: Familiar with the development environment and shell commands, Git, and code management.
** 7. Golang Backend Engineer **
1. ** Server Development **: Proficient in Golang Server Development.
2. ** In terms of database **: Proficient in using and performance optimization of MongoDB.
3. ** Frameworks **: Proficient in at least one mainstream Web server system framework such as Gin and Beego.
4. ** Interface and design **: Familiar with RESTful interface development, familiar with common design patterns, and has experience in server side system development and performance tuning.
5. ** Operating system **: Familiar with the development environment of the linux system, proficient in using web framework such as GIN and Beego.
** 8. GPS Engineer **
1. ** Front-end **: Proficient in javaScript and Vue.
2. ** Spatial analysis **: Proficient in spatial analysis theories and methods, familiar with the application and development of relevant tools.
3. ** Secondary development **: Familiar with the secondary development of open source arcsis, openlayers, and mapbox.
4. ** In terms of the application of GPS **: Familiar with the application of GPS software and Web-based GPS, as well as the graphic rendering and editing of the GPS platform.
** 9. Full-stack Engineer **
1. ** Language **: Proficient in the Go language, Goroutine, Channel, Context, and understand the underlying principles of Go.
2. ** In terms of database **: Proficient in Myssql, MongoDB and other database.
3. ** Front-end aspects **: Familiar with front-end development, master of Baidu, Google, and javelin, and be proficient in reading and writing English.
In addition, the skills that software development engineers generally needed included the ability to tune and team work. The ability to tune helped to find the reason why the system could not run successfully. The ability to team work ensured that their work was compatible with the entire system. At the same time, they should also regard all technologies as tools and aim to solve problems. They should also have the awareness of lifelong learning to adapt to the rapid development of technology.
"When a programmer meets a psychologist" is equally exciting. Everyone is welcome to click to read it!
What were the basic skills needed to be an editor?The basic skills needed to be an editor included:
1. Good writing skills and language skills, able to write, revise and polish texts;
2. Excellent reading and editing skills, able to identify and filter excellent works, evaluate and classify them;
3. Have a deeper understanding of literature, publishing, media and other fields, and be able to analyze and judge the type, style, theme, etc. of the work;
4. Ability to cooperate with other editors, authors, readers, etc.
5. Have a certain financial and legal knowledge, able to deal with copyright, publishing and other legal matters.
Editor was a job that required a comprehensive quality. It required continuous learning and improvement of one's ability and level.