Talking about the programmer series: How to Say goodbye to "goof off"

Source: Internet
Author: User

I am in the "random Talk about the programmer series: Gee, you are also fooling around" the article describes a kind of the current situation, a friend said that the article only mentions the setting goals farewell to the muddle and did not start to discuss "how to set goals", "how to work for the goal" of the two key issues, that is, I raised the question but This time, I decided to talk seriously about how to set goals and how to work for them. Everything starts from personal experience and is for reference only.

What's the goal?

"Goals are the outcomes that individuals, departments, or entire organizations expect to achieve. ”

The definition looks cold, and there are two more sentimental words: dreams, ideals. But these two words seem to be too vague to talk about and feel like something that will never be realized in the long term.

an ideal is a goal .

Ideals and goals are inseparable, and the combination of the discussions will be more meaningful.

There are ideals, goals, goals, actions, and action .

In this simple sentence, I will mention later that it elaborates on the relationship between ideals, goals, actions and outcomes.

How to find a goal

How to find a goal? This is a very critical point.

Feel the article more write more formal, this deviated from my original intention, a little uneasy, also a bit not adapt to it.

I divide the programmer's goals into three categories: corporate goals, career goals, and life goals.

Company Target

The programmer is a part of the company and participates in the process of achieving the company's goals. This is nothing to say, the King of the Food of the king of the matter, took the people's money, is to give others work.

In his 1954 book "Management Practice", American management biologist Peter Drucker first proposed the concept of "goal management", and then the goal management (Management by Objectives,mbo), which is still widely used, has many companies in use Mbo. I was in the XI ' an Shun Lee Software Technology Co., Ltd., has also carried out a goal management. At that time also learned another book, (Day) string Tianwuze "Target Management Practical Handbook", feel Great harvest.

There are five elements of goal management:

    1. What target?
    2. To what extent
    3. How to Achieve
    4. When to complete
    5. How's it going?

Usually the company in the implementation of MBO, will also be linked to performance, the goal is well done, the results of the performance is good, the bonus is more, promotion pay faster.

Company objectives, part of the vision, environmental change, this is vertical, and some are horizontal, from the departments, different departments have cross-collaboration, a department of the goal to achieve may need B department assistance, or multiple departments on a product line, their goals are dependent. Whether vertical or horizontal, you need to break down from top to bottom, big goals into small targets, and finally to the specific staff to execute, the programmer is responsible for the implementation of the staff.

Corporate goals are eventually broken down into individuals, resulting in individual work goals.

Here is a picture:

How to find the company's goals, how to decompose, how to formulate measures, how to implement, I am dabbler, specifically, please refer to the "Target Management Practice manual" bar. Here's what to mention:

As a member of the company, the programmer must be involved in the realization of the company's goals, the success of the company, the individual may succeed, so be sure to understand what they can contribute to the company's goals, and actively to achieve the goals of the company's personal goals.

If you are in a company, do not know what to do, it is either a company management problems, or your leadership is unqualified, these two possibilities will be larger. If that's the case, you might consider leaving your job--it's hard to get results in a company that doesn't know what to do.

Career goals

A career goal is a person's specific goal to be achieved in a chosen career area.

This is a question that everyone has to think about.

I often ask candidates to plan for the next 3-5 years in the interview, which actually targets the medium-term goals of the job Seeker's career goals. Some programmers will tell me that he wants to be a project manager after three years, and some programmers say he wants to be a technical expert in video decoding five years from now, and some programmers will be embarrassed to smile and say they haven't thought about it. What kind of you are you?

Career goals are divided into short, medium and long term.

Short-term goals are typically within 2-3 years, such as when you're in mobile development, and you might want to spend 2-3 years mastering the Java language, all aspects of the Android application framework, and parts of the system framework that can be developed independently of more complex apps.

Medium-term goals are generally targets within 3-5 years.

Long-term goals, 5-10 years of planning, generally set more long-term goals, such as you want to be 30 years old can become the IBM XI ' an branch of the first line manager, or want to become a small company technical VP.

There is a more long-term plan, that is: life planning.

After all, suddenly found myself is a professional goal is not clear people ah, cold sweat in one.

In fact, well, I began to defend myself, I hope you do not. Actually, can we really see that far?

Now there is a profession called "career Planner". Haha, I think very good fun ah, this can also test GCDF certificate, who is interested can test one.

What I would like to say is that it is normal to see a target of less than 10 years, and a plan of about 3 years is not justified; Alas, what should I say, go to the Career planner and talk, they might really help you.

If you have your own career goals, then when you meet a company that is doing well, you can be very clear that you should leave and be decisive. If you run into intermittent idle time, the career goal will also help you build a short-term plan that will help you achieve your career goals in the gap period, so you don't have to draw your sword si gu your heart is vacant.

Life goals

This is the most difficult to understand ... You see so many novels, essays, Body and Mind books, psychological books, inspirational books, are trying to understand this problem, but, from your point of view, who said understand? So, I am a Zhu er, it is not likely to put this thing to understand, I have only a word, or imported:

most of the efforts we make in our lives are designed to give ourselves a sense of belonging and worth .

I am actually a ignorant person, when I decided to be a programmer, like "I am suitable for this", "I like to do this", "I can do this" and other feelings and judgments do not have, my starting point is quite simple: in the last job I do not feel the value of their own, do boring.

So, from personal experience, as far as work is concerned, I think sometimes it is not that you feel that the new job is particularly suitable for you, that you can make a good career, but that you are so disappointed with the status quo of your last job that you are willing to take some chances to try it out. If your new company does something that fits your personal career goals, it's even better, it's a big jackpot.

Work is life, work and life are not fragmented, should be harmonious and unified.

Work is an important part of life, and it takes up most of the years in our prime. When we consider the goals of our lives, we are likely to include the goals of our work. For example, if you want to be a singer, singing and writing will become your job and your life. For example, if you want to be a great programmer, write a new mobile operating system, and shoot Android and IOS to death on the beach, it is estimated that your life will change dramatically.

We are ordinary people, like our cock-wire programmers, most of them are ordinary person, life is plain, ordinary, ordinary, plain, then, what is our goal of life?

Oh, "When I was young, I made a fortune, and when I was old, I had to fight for my life", which is certainly not what we admired.

That, "Get up earlier than the chicken, sleep than the dog late, do more than the donkey, eat worse than the pig," nature is not what we want.

"Buy a house, buy a car, buy a female (male) friend, raise a baby ...", is this it?


In my opinion, this is not clear of the unknown things, you like to do this thing, he is willing to do that thing, you clock extravagantly the way of life, he is willing to a songaksan eat a scoop drink days, are very good. If you can do "pick Chrysanthemum East hedge, leisurely see Nanshan", I will be very envious, even there will be jealousy and hate.

I hate myself for being such a no-stand attitude! Come and scold me, seek abuse.

Time is passing, and the future does not come automatically. The future needs our own to create. Simply put, we are arriving and creating the future by achieving one goal after another. Without goals and plans, there is no future you want.

Sometimes we can not see too far, then from the recent goals, to see what they want to do this year, next year, in a column on a piece of paper, analysis. It is important to make a plan to accomplish what you regret when you do not do it. The things we do will make us feel more fulfilled, and that can be done in front of you. Which things have progressive characteristics that can extend a new goal ... After the analysis, you can identify a few things that must be done, and that is your goal.

The goal of life is actually something that you can achieve if you are willing to devote your energies to doing it.

For example, you want to take a driver's license this year, buy a car next year, also count as a very specific goal.

For example, you want to find a sister this year to say goodbye to single, next year your mother to the grandson, is also a very practical and exciting goal.

It is one of my goals to write a book about technology around this year.

For example, you want to take three years to complete a job promotion, from programmer to software project Manager ...

As long as you are willing to look at yourself and take the time to analyze, you will find something you want to do. And these things, can give you a sense of belonging and value, you can become a good goal.

Finally, I want to say, no matter what kind of lifestyle you pursue, what your life goal is, the ultimate foothold, in fact, is the "heart", when you or soothing or tense in the river with time to spill their own life, as long as you feel peace of mind, feel joy, feel peace, this is enough, the other said more is nonsense, So on the subject of life goals, I'm going to do it.

Work for the goal

The goal is the plan.

Have a goal no plan, must be white blind.

To achieve the goal, you have to stick to it and try to implement your plan.

Work objectives

Before we talked about company goals, we mentioned that corporate goals would be broken down to individuals, and also referred to MBO. In fact, MBO not only has goals, but also measures to achieve the objectives, as well as the management of these measures. If you are an ordinary programmer, the company or your superiors should assist you in formulating these things, and if your company does not use the goal management law, then I suggest you figure out what the goal management law is all about, because it applies not only to work but also to life.

We take the example of developing a push service to illustrate how to set goals and plans.

The goal: To develop a push service. This is a bit general, but also need to refine the service indicators:

    • Supports Android, IOS two platforms
    • Support for billions of users
    • Messages can reach the phone in 2 seconds.
    • Message arrival rate is 99%
    • Service to run 7x24 hours, recovery time less than 1 minutes

Now the service indicators have, if you are the project manager, your MBO card "Development Push Service" This content is basically OK, and then fill in the implementation measures, expected time what, it is complete.

To understand the implementation measures and the time, we need to further consider the implementation measures.

These needs need to be further refined before the implementation measures are formulated. Let's take the first one, which supports Android, IOS two platforms as an example.

The push service should be divided into server and client.

Servers do not need to cross-platform, you can use Windows, Ubuntu Server, Cent OS, and so on, choose a good. The server also needs a management interface that allows the operator to edit and submit push messages from the management interface. It is estimated that an API interface will be needed, and some programs may automatically generate messages to be pushed.

The server and the client need to communicate, and you want to define the communication protocol.

Android needs to implement the Access module, must be a Service, but also to deal with the standby problem, third-party security software Avira problem. iOS must take into account the limitations of Apple, which may be combined with the iOS built-in push mechanism.

There's a lot of stuff going on here. Pick one more to refine, take the communication protocol to say it.

Communication protocols are open source, such as XMPP, MQTT, and of course, you can define it yourself. Which is the choice? Do you want to open it to third parties?


You see, there are so many things waiting for us to do, excited. No matter which demand point you follow, you will break down a lot of work modules, each function module can be split again ... This article is impossible to do such a professional thing, to the project manager, they do this. I just want to show that at work, you want to achieve a goal, it is necessary to go through the process of decomposition of the goal, the big target into a small, can be achieved in 32 days of the task, so that it is enforceable. Then the tasks are queued and each task is given a time box, and the plan comes out. Finally, you can execute your project as planned to accomplish your goals.

How to use empty schedule effectively

This article stems from the question of "How to say goodbye to fooling around", so the question is:

What should I do when I'm not doing anything at work?

When it comes to career goals, a clear career goal will help you spend your leisure time (if any) in your work.

Let me give you a personal example.

In 2014, I was responsible for the end of the development of the product (only maintenance), a few months of time no specific things to do. Sloshing a day can, sloshing time long this heart panic ah. Fortunately, I have a unique technical situation, but also more love to study (face a little red, in fact, I was a bit of a guy), so I would like to see how the framework--qt--before, so go to research, wow, incredibly support Android, but also support IOS! Excited, immediately download the latest version, set up the environment, began to write code to do experiments, finished summing up, to share on the blog.

So, continue to learn the technology, help me through the original may have been idle for a few months, glad time is not wasted. The time of the study, but also a coincidence of the book: "Qt on Android core programming ." To tell the truth, I enjoy the process of studying and writing books. Every night to write, every morning early to write, weekend nest in the Home debugging code, music without its bitter. A lot of things are like this, you like to do not feel bitter. When I finished writing the book, I felt empty.

In fact, we in the development process, will use a variety of technology, most of the time in order to catch the project, are to achieve the function as the first priority, trees trees, used to throw aside. The new project came, and he was busy with the Roar. But if you want to improve, you have to review, summarize, expand, the use of those technologies listed, in the leisure time, with the technical point you used as the center to draw concentric circles, a layer of outward expansion, enrich your accumulation. It's a great way to live up to the good times.

There are also programmers in the medium-term career goal is to do technical management, if you have free time (do not have to squeeze time), then you can look at the project management books, such as "Project Management Knowledge System Guide (PMBOK Guide)", "Project management: Planning, progress and control system method", "People's Month myth", " With people's technology: do not know with people you do yourself to die, "software engineering (practitioners of research Methods)", "Project management Practice" ... And so on, let yourself have a theoretical understanding of project management and team management. A lot of books, can be described by voluminous, I listed those but bucket, more books you can use the Amazon and other sites related to the recommendation to understand.

The birth of a new goal

Life is like a mountain, a hill past and a mountain, we are so constantly climbing. In the process of climbing, sometimes you will find new peaks, new goals are born.

In my writing "Qt on Android core Programming ", I found that the QT Quick Framework is concise, elegant, powerful, and I did not take care of it, the heart is not so quiet, feel that such a good thing should give it a little attention. So I set the goal: study QT Quick and write a book about QT quick.

With the goal, I quickly came out of the emptiness of "QT on Android core programming " and put my leisure time into Qt Quick.

Choose what to say, outline, plan, evaluate how long each topic is expected to take, how long it will take to write the article, and finally develop a rough plan to get the job done in 3-4 months.

With the plan, I will arrange their own time, the evening, the morning, the weekend, a theme of a topic to study, learning to record their own experience to keep the sample program ...

After 3 months, I have accumulated a lot of raw material, "QT quick core programming" is basically finished.

No one asked me to write a book, it is because I like to write and like technology, is a spontaneous behavior. The process of studying technology makes me feel comfortable, writing makes me feel valuable, so I am willing to do such a thing, even if the money on the return of a little to shrug off.

Get moving.

Finally, we must emphasize: all goals, plans, must be put into action, otherwise it is empty talk! Why are there so big differences between individuals? In spite of the factors of the father, the most important point is: Some people superrich, some people use action to prove themselves.

-----------Review the split line-------------------

    • Talk about the programmer series: Where's Your lucky lady?
    • Talking about the programmer series: Gee, you're fooling around.
    • Talk about Programmer series: Please treat female programmer differently
    • Talk about the programmer series: willful, resigned before the spring festival
    • Talking about the programmer series: salary, you are the injury I cannot speak
    • The programmer's series: programmers should not consider startups
    • The programmer series: Strange Programmers
    • Talking about the programmer series: the details that killed the programmer
    • Talk about the programmer series: An old programmer's 2014 year-end summary
    • Talking about the programmer series: How to become a tech talent
    • Talk about the programmer series: who was born to work overtime
    • Talk about the programmer series: Looking for work of the evil sword spectrum
    • A ramble on the programmer's series: A Path to the programmer
    • Talk about the programmer series: 18-like fun with software development
    • The programmer series: What is the role of the programmer
    • Talking about the programmer series: Don't say, "I've tried so hard."
    • Talk about the programmer series: no Bug, no life
    • Talking about the programmer series: Is this How the programmer lives?
    • Talk about the programmer series: see how far you are from the good
    • The Programmer series: Programmer 0 Threshold?
    • Talk about Programmer series: 3D printing can you print a program ape?
    • The series of programmers: The golden Age of Shining stars
    • Talk about the programmer series: stimulated, the beginning

Talking about the programmer series: How to Say goodbye to "goof off"

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: 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.