Career planning for Java engineers

Source: Internet
Author: User
Tags jboss knowledge base

"1"

At the level of programmers: do some static interface;
Programmer: Do some additions and deletions to check the small module;
Intermediate programmer: To do logic more complex module;
Senior programmer: do core module;
Project Manager: The overall structure of the system;
Department Manager: Multi-project management;
President: Multi-Department and Enterprise Development planning;

"2"

If you have just graduated, it will take a few years to accumulate experience, can not rely on a stunt to eat all over the world, do not expect Java to make more money or C + + or. NET to make more money. Too early. Accumulation of experience is the main. Accumulated experience in design, architecture, testing, communication, management, EQ, etc. Then make a decision based on the accumulation of the next n years. The ideal situation is a professional, much can. Must have the same proficiency, but to know, the so-called master is not only one, to their level, what is the same, to see the learning ability and reasoning ability.
So, first of all, to accumulate experience.

"3"

1. I hope you can gain from it.

2, must determine their own direction of development, and to this end to develop a workable plan. Don't say anything, "I just graduated and I don't know what I might do in the future." "Go with the feeling and do it first." Because it is through your subconscious mind to imply that your actions are idle and mediocre. Always do the technology, the future becomes the expert level person. Go to the management direction and become a professional manager. First familiar with the industry and the field, the future. Or in the industry first bully, after a few years to do something else. This is important and it will determine what you are doing right in the last few years or ten years. ”。
3, Software development team, technology is not omnipotent, but no technology is absolutely not. In the technical team, technology and character are equally important, of course, looks are also more important Kazakhstan, especially in the MM more team. In the software project team, the technical level is the important weight which is valued and respected by people. Whether you do management, system analysis, design, coding, or product management, testing, documentation, implementation, maintenance, how much you have to have a technical basis. I didn't really see a layman. Lead a software development team to successfully complete a software development project, even one, not seen. I have seen a "highly educated cow" (not technical type) with a pile of people to finish a project, the project delivery the next day, the project team members dropped a "no longer can not stand it." "Split, separate. We can imagine the success of that project.
4, the elaboration of their own software development expertise learning program, and pay attention to timely correction and adjustment (software development technology changes are too fast). Keep in mind: "If a software developer has not updated his knowledge in 1 or 2 years, he is no longer part of the industry." "Don't tell yourself there is no time." The famous "38 principles" from time management warn us that the other 8 hours will determine the success of your life. I have been studying for more than 2 hours a day since I graduated.
5, books are the ladder of human progress, especially for software developers. Books are the most effective way to learn knowledge, not too much to expect to meet "hidden man" in the work, and to teach you patiently. For money to buy books, my personal experience is: do not buy the domestic people out of the book. I bought those guys out of the book, 100% all regret, without an exception. More angrily, these books are hard to sell in second-hand market stalls. "Owning books does not mean owning knowledge, having knowledge does not mean owning skills, having skills does not mean owning a culture, and having a culture does not mean possessing wisdom." "Only by turning the book into its own wisdom is it truly possessed."
6, do not confine yourself to the surface use of a technology, even if you only use secondary occasionally. "Nothing to do with anything" is any industry engineers should not have the quality. Development of Windows applications, look at the design, loading, implementation of Windows programs, analysis of the PE file format, try to use SDK development from scratch to develop a Windows application, VC + +, Delphi, Java,. NET development application program, take time to study MFC, VCL, Java EE,. NET their framework design or source code; In addition to the excellent Open-source products or frameworks that use Java EE, JBoss, Spring, Hibernate, and so on, take a moment to see how the gurus abstract, analyze, design, and implement common solutions to similar problems. Try to do this, your future work will be less to meet some of your confused, because, a lot of things you "know it and know why."
7. Programming in one language, but don't tie the mind to it. "Code Encyclopedia" said: "Deep in a language programming, do not float on the surface." Deep into a language development is still far from enough, any programming language exists has its own reasons, so there is no language is "to cure all diseases" of the "panacea." The examples of programming languages that influence and bind developers to solve specific problems are abound. My experience is: in the face of object tools to develop some key modules, why can not learn from C, C51, assembly of modular packaging. With the traditional desktop development tools (currently mainly VC + +, Delphi) system structure design, why can not reference from the Java community IOC, AOP design ideas, and even learn from spring, Hibernate, JBoss and so on excellent open source framework. In the design and implementation of functions like real-time communication and data collection, why not use the excellent system framework and mode from real-time system and embedded system. Why does everything have to be done by individuals, teams of course to develop language traditions or experiences to solve problems ... "The Stone of his mountain, the Coye".
8, develop the habit of summing up and reflection, and consciously refining the daily work results, the formation of their own personal source library, solve a class of problems of the general system architecture, and even evolve into a framework. As we all know, for software developers, there are, one notable difference is that inexperienced people start from scratch when they finish any task, while experienced people often solve problems by reorganizing their reusable modules and class libraries (this conclusion should not be limited to software development and can extend to many aspects). This is not to say that all reusable things must be achieved on their own, others mature test results can also be collected, collated, integrated into their own knowledge base. However, it is best to achieve their own, so there is no intellectual property rights, copyright and other issues, the key is to achieve their own realization can really grasp the knowledge point, have this skill.
9, both theory and practice, both inside and outside the double repair. The connotation of an engineer is to observe and analyze things and the world with the eyes of an engineer. A qualified software engineer, is a true understanding of the nature of software products and software product development of the idea of the essence of people (personal views, welcome to explore). Mastering the Software development language, the application Language tool solves the concrete problem in the work, completes the target task is the software engineer's main work, but from the software engineer's point of view, this is only the external thing, is not the important, the essential work. Learning and mastering the theory of software product development, software development methodology, and understanding in practice, application of software product analysis, design, implementation of ideas to solve specific software product development problems, is the real software engineer work. Standing in the mature theory and reliable methodology of high thinking, analysis, problem solving, and in concrete practice to verify and modify these ideas and methods, and eventually form their own theoretical system and practical methodology.
10, the mentality has many open, the vision has many open. Do not hold your own technology and achievements, until they are obsolete into garbage, only to take out a disgrace. Please release your research results in time: Develop products, creative design or code, published to let you communicate or use, your achievements have the opportunity to evolve and sublimate. Think of the Windows system tools that you have developed over the past 2000 years, 5, 6 years from now, or that way, many Windows system tools that are popular today are later than their own, but evolve very well, and there are so many users in use. Also, do not keep your own skills and ideas, communicate and share as much as possible, or impart them to members of the development team. "After exchanging apples, everyone has only one apple, but after exchanging ideas, everyone has two kinds of ideas," everyone knows, but how many people can really do it.
11, as far as possible to participate in the development of open source projects, or together with friends to develop some of their own products, do not because there is no money to earn and do not do. The network is no longer just a "virtual world", there are many open source projects, cooperative development projects, outsourcing projects, it is a good opportunity to dabble in knowledge outside the work, and to meet a wider popularity. Do not because the work is to do ERP, not to learn and understand embedded, real-time, communication, network and other aspects of technology, and vice versa. If others hold a contract to cooperate with you, but you do not, that is not familiar, you will regret.
12, when the book to hate less, do not confine their knowledge only to technical aspects. Professor Simon, the Nobel laureate in economics, says: "For a person who has a certain foundation, he can master any knowledge within 6 months if he really is willing to work hard." "The education psychology has been named Simon's learning method to thank Professor Simmons for his research results," he said. It can be seen that the mastery of a strange knowledge is far from the imagination of so difficult and abstruse. Draw and extensively learn from many parties. Hard to tamp their influence circle, as far as possible to expand their focus circle. Financial, economic, tax, management and so on knowledge, have time to take a look at, bide, wait for a rainy day.
13, the summary and reflection of this article:
A: Don't be a technical expert unless you have a goal. Although this article is about improving the knowledge of software development, do the technology is a master I have always disagree. You can improve your professional knowledge, but you can do the job.
B: To improve the software knowledge and technology is only the surface of the problem, the essence is to improve their understanding of the problem, analysis and solve the problem of the ideological height. Many of the methods and principles of software expertise can be easily extended and applied to other aspects of life.
C: On the basis of competent work, immediately to dabble in other areas of expertise, enrich their knowledge system, improve their comprehensive quality, especially those who are not technical friends.

"4"

The highest position is technical director and Chief Technical Officer (CTO), annual salary 20 to 60W, programmers can be divided into many, the bottom of the programmer, write the low-level code, intermediate software engineers, Senior software engineers, project managers, implementation, architects, programmers to the architect generally 8-10 years of experience. The average person must have a corresponding certificate on every step, but the technology will be hard to avoid.

"5"

The job of a good programmer is not just to code, but to do the work of using the language of human thought to tell the computer to do what human beings want them to do.
So, here's the problem. Do you have a mind? Do you know what you want the computer to do? such as management, computing, statistics, animation .... If you are 35 years old, you can only do coding work under the guidance of others (software blue collar) I'm afraid I'm not as young as I am physically and energetic.
So, when it comes to career planning. Proficiency in the language of the program when young, then independent commitment and organization of a complete project, after being able to lead a team to complete the project. In this process, you have to communicate with the internal, communication, and users to communicate, communication, to make the project plan and supervision completed.

"6"

Interns----Low-level code workers----low-level programmers-----programmers------Junior Engineers------Mid-level Engineers-----Senior engineer----Project managers----Software Architects-----Software Architects (if possible)---entrepreneurship as a boss



Java Programmer's career planning essay

A philosopher said: "Take every step, is your life." "The road of life is long, because this is your life to walk the difficulties and hardships of the trek, the road of life is short and short, because you spent every day is your life." Everyone is planning their own life, are in the realization of their dreams, and I will be on the route of planning anchor sail.

First, know oneself

1. Personal Analysis:

I personally think that my character has two sides, I like to read in a quiet environment, and sometimes chat with friends to share each other's joy. Also like playing badminton, running, travel, enjoy the beauty of nature, edify their own sentiments. In addition, I also have a team spirit and cooperation ability, compared with strong hands-on ability and practical ability.

People are not perfect, I am doing things, sometimes more impatient, but I will be in the future work and study to improve their own shortcomings.

Second, the analysis of career conditions

1, Social environment analysis:

Overall, our country is facing a good social environment, social stability, ZZ Stability, especially the current rapid economic development, the construction of the legal system constantly improve, high-tech areas of rapid progress. Therefore, in such a good social environment, the formulation of a reasonable life career planning is particularly necessary.

2. Analysis of Occupational environment:

It industry is gradually developed with the development of the electronic information industry, and is being perfected increasingly,

The steady growth of IT industry will inevitably bring about the growth of software engineer's demand, now with the technology integration of IT products, the huge demand of the market and the shortage of professional talents, the software industry is still more optimistic. But the software industry needs a combination of talent, software engineers need to master more programming languages.

Iii. positioning of career objectives

1. Determination of Career objectives:

1.1 Short-term goals (1-2 years):

Focus on Java Basics, learn project development experience, understand the business knowledge of project development, and grasp the complex query and management of SQL statements of DB2 database in learning, and learn more about struts, hibernate, spring-related operations.

1.2 Medium-term goals (3-5 years):

At least know and familiar with 2 programming languages, such as. NET, C + +, PHP, and learn to master Oracle, MS-SQL Database management operations, master software development at all stages of basic skills, such as market analysis, feasibility analysis, demand analysis, structural design, detailed design, software testing.

1.3 Long-term goals (5-10 years):

Learning Management related knowledge, from the technical type to the management of the transfer.

2, Success criteria:

As long as their own dedication, ability to play, from practice to be promoted and self-awareness, is the greatest harvest.

Iv. Assessment of adjustments

1. Time of assessment

In general, every three months to do a summary of their work, every six months to the career planning reassessment and adjust accordingly.

2, the content of the assessment and the principle of adjustment

No matter how the goal adjusts, each time period must have clear work plan and the goal, the content appraisal mainly focuses on the implementation strategy appraisal and the adjustment, along with the society and the profession some development and the change, at any moment adjusts own goal realization strategy, achieves the simplest plan fastest enhancement.

V. Concluding remarks

Road long its repair far XI, I will be up and down and searching. How can you see the rainbow without experiencing wind and rain? We must keep a clear mind at all times and strive for our own goals. In fact, everyone has a picture in mind, describing ideals, beliefs, pursuit, ambition, everyone has a forest in mind, carrying the sweet, eerie fear of the wandering. A person, to achieve success, must take courage, pay efforts, hard work, struggle, success. Opportunity different feelings tears of sadness, do not believe in decadent despair, only look forward to love to fight, always ready for the people.




Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.