This is how I want to go on the road to programming (a must-read for newbies!)

Table of contents

​Foreword

My programming goals

1. The goal of accumulating programming knowledge

2. Employment goals using programming

How to learn programming

1. Learn and consolidate relevant knowledge

2. Use blogs as a carrier to summarize and review knowledge

3. The best method is your own method that changes through continuous practice.

How much time do I plan to spend learning programming each week?

1.Holiday

2. Semester

The IT company I most want to join

Company Name

Introduction to the company and its IT positions

Conclusion

Related Links


Preface

Hello everyone~~~, this is a pinned blog from an automation freshman [₽] from Hunan! When I wrote this blog, I had just come into contact with the programming field and CSDN, and I had already made up my mind to learn programming skills and develop the habit of daily blogging. Therefore, this blog is not only my own plan for how to learn programming and use CSDN to write blogs in the future, but also a greeting when I meet everyone for the first time. If you think it is good, you can also use it as a way to learn programming by yourself. Reference and reference. If it helps you, I hope you can give me a like, comment or support three times in a row. I hope we can make progress and grow together on the road of programming!


My programming goals

1. The goal of accumulating programming knowledge

First, spend about a year learning and practicing to consolidate knowledge about C/C++, including but not limited to C language, data structure algorithm, C++ language, Linux system programming, and MySQL database. If you are still learning during this period, If you have spare time, you should also learn the knowledge of microcontrollers related to our automation major, including but not limited to the 51 microcontroller, which is suitable for novices to learn, and the stm32 microcontroller, which is powerful and widely used. This can not only further enrich my professional knowledge and skills, but also provide me with future knowledge. Accumulate certain knowledge in advance when taking the postgraduate entrance examination re-examination.

2. Employment goals using programming

I hope that after finishing graduate school and accumulating relatively solid programming and embedded knowledge and some internship experience, I can work as an embedded software engineer corresponding to my major. The salary will be good, and it is mainly my current interest.


How to learn programming

1. Learn and consolidate relevant knowledge

I plan to start with C language first, and scientifically and systematically study each knowledge point in C/C++ learning from easy to difficult, from local to systematic, from basic to expanded. You can refer to the general direction. Picture below, and then I will practice the knowledge I learned today in the form of a project after class to deepen my impression of it, so as to learn this knowledge point and consolidate all the knowledge points at the same time, deepening the understanding of the knowledge point. While understanding the knowledge points, it also improves the practical experience of system knowledge, which is an excellent effect of killing two birds with one stone.

The general direction of C/C++ learning


2. Use blogs as a carrier to summarize and review knowledge

Then, as mentioned in the previous blog introduction, I will also develop the habit of writing at least one blog every week, that is, using the blog as a carrier for me to accumulate the knowledge I have learned, so as to achieve the convenience of blogging as a way for me to consolidate my recent work. The method of learning knowledge and reading blogs as a way for me to review previous knowledge can achieve the effect of repeated learning (I would like to interrupt here. If you find that I have stopped updating without explaining the reason recently, you can remind me to update. Oh, I will reply to the private message after seeing it! XD).

3. The best method is your own method that changes through continuous practice.

1. Everyone should have their own method. There is no so-called fixed framework and there is no so-called absolute good or bad method. The one that suits you is the best.

2. The only constant thing in the world is change itself. Practice is the only criterion for testing truth. What’s more, for those of us who want to learn programming that requires lifelong learning, the best way is to keep pace with the times and improve through our own hands-on practice. Methods.


How much time do I plan to spend learning programming each week?

1.Holiday

I plan to spend six hours a day, that is, forty-two hours a week, learning programming during the holidays. Firstly, it is because learning programming cannot be rushed, it requires so much time accumulation, and secondly, because as a novice, I need both It takes a long time to learn and digest new knowledge, and it also takes a long time to accumulate practical experience in coding and consolidate previous knowledge to prevent it from being missed. Thirdly, the time during holidays is compared with normal classes. There is still plenty of time at that time, which can be mainly used to accumulate new knowledge of programming.

2. Semester

When I was preparing for the semester, I spent about eighteen hours a week, which means I spent about three or two hours a day learning programming. The time during the semester is relatively tight, and I must use the limited time efficiently on programming. At this time, every day You may only be able to complete one of learning new knowledge or consolidating old knowledge, and the remaining fragmentary time will be used to complete another thing. Therefore, efficiently attacking each key point one by one is what we need to do most during this period of time.


The IT company I most want to join

Company Name

biliable

Introduction to the company and its IT positions

There is no need to explain more to you at Station B. We are also old in the second dimension. The responsibilities and skill requirements of various IT positions at Station B are as follows:


Operation and maintenance project management
Job responsibilities:
1. Responsible for the management of IT resource projects and ensuring that the project team works collaboratively;
2. Responsible for IT asset management and regular asset inventory;
3. Track the use of IT resources, analyze the data, and complete Daily reports;
4. Assist in IT cost management, budget formulation, supplier communication, etc.
Job requirements:
1. Possess data sensitivity and desire for exploration, ability to analyze and solve problems, and good data presentation ability; 2. Be
serious, responsible, rigorous in work, and have a good team spirit;
3. Have good communication skills and skills ;
4. Foreign language communication skills and overseas background are preferred.
Data Development Engineer
Job Responsibilities:
1. Responsible for data research of live broadcast business, data warehouse model design, ETL development, task monitoring and optimization, etc.; 2. Responsible for the
construction of application products for multiple scenarios of data warehouse, such as express reports, alarm push, etc.;
3. Responsible for data exploration based on the data warehouse, such as feature engineering, tag mining, etc.;
4. Responsible for the development and implementation of data management.
Job requirements:
1. Full-time undergraduate degree or above in computer or mathematics related majors;
2. Proficient in using SQL and understanding of data warehouse ETL development;
3. Familiar with at least one scripting language such as R, Python, and Shell, and those with practical experience are preferred ;
4. Java/Golang development experience is preferred;
5. Strong business understanding ability, strong technical learning ability, proactive work, and good teamwork ability.
Front-end development engineer
job responsibilities:
1. Participate in the web front-end research and development of each product line of Bilibili;
2. Optimize product interaction logic and improve product usability;
3. Participate in the research of forward-looking technologies to prepare for continuous product innovation.
Job requirements:
1. Proficient in Web front-end technologies such as HTML, CSS and JavaScript;
2. Have experience in cross-browser and cross-terminal front-end development;
3. Understand at least one server-side language (Node.JS/PHP/Python/Java, etc. ;
4. Be familiar with a widely used front-end framework;
5. Have a solid computer foundation and a deep understanding of data structure and algorithm design;
6. Have strong learning ability, good communication skills and good teamwork spirit.
Test Engineer
Job Responsibilities:
1. Responsible for Bilibili client and server testing;
2. Participate in formulating test plans, design and execute test cases, and organize corresponding project test documents;
3. Track online feedback issues and assist in development positioning and promote problem solving;
4. Participate in optimizing project processes and tools to improve the delivery efficiency of the entire project.
Job requirements:
1. Computer-related major, bachelor degree or above;
2. Familiar with software engineering, software testing theories and methods, familiar with related Testing process and software engineering principles;

It can be seen from this that if you want to work at Station B, the requirements for professional knowledge in various aspects are still quite high, and you still need to have relatively good social skills. For me, who is relatively average in both aspects, I still need to continue to work hard. and deepening social experience are possible.


Conclusion

This article comes from a pure programming novice’s plan for his future. If there are any shortcomings, please feel free to correct them in the comment area, or if you have any suggestions, you can also make them. You’ve all read this, please give it a thumbs up and support it so that more friends who are new to programming can see or learn from it. Your support is my biggest motivation for updating! Let us work hard together for our goals and dreams and make progress together!

Related Links

1. Automation major: https://baike.baidu.com/item/%E8%87%AA%E5%8A%A8%E5%8C%96/323170?fr=aladdin

2. Embedded software engineer: https://baike.baidu.com/item/%E5%B5%8C%E5%85%A5%E5%BC%8F%E8%BD%AF%E4%BB%B6% E5%B7%A5%E7%A8%8B%E5%B8%88/537256?fr=ge_ala

3.bilibles:

Bilibili (cultural community and video website)_Baidu Encyclopedia (baidu.com)

Guess you like

Origin blog.csdn.net/2303_78612872/article/details/131622930