疫情下,我選擇了離職... ; 工作三年老程序員,談談職業規划


  疫情之下,確實行情不好,相比去年招聘信息少了很多,因為去年這個時候我也在跳槽。建議:不是非要離職的話,以穩為主,不要瞎跳!!!有錢任性的話,隨意了

  疫情離職

  疫情之下的面試益處

   疫情之下帶來的跳槽好處,就是面試帶來了方便,之前面試你必須要去公司,你說可以電話面試么?HR一定會說:不可以!!!現在不一樣了,如果你說:可以去公司面試么?HR一定會說:你隔離滿14天了么?...。所以為騎驢找馬帶來了方便,電話或視頻面試,可以拿offer了...

  原因

  看到這個標題,你們一定很好奇為啥離職?原因主要有以下幾點:

  1. 太辛苦,每天都要半夜1/2點下班,一周6天
  2. 呆着不舒服

  原因涉及到關鍵詞就是"健康",熬夜加班會直接影響身體健康!!!呆着不舒服會影響心理健康,其實很多人並不重視心理健康,不是我瞎白活的,鍾南山院士,也說過:人的身體健康,一般源於心理健康。

  職業規划

  無論畢業、還是跳槽找工作時,一般都會問到職業規划。

  畢業時,沒有規划、也不知道職業規划,很盲目,不知道自己能做什么,能找到一份工作就可以了。

  工作之后,漸漸有了目標,知道我要做什么,我能做什么...。

  先說說我的職業規划吧:一直會做linux C/C++開發, 畢業五年之內,會去嘗試不同的行業和技術方向,去學習、沉淀一些東西,五年之后,爭取進入大廠,穩定下來。

  行業很重要(傳統和互聯網)

  之前的文章也有透露過,是從傳統IT行業跳到互聯網的,列出簡單的幾點區別:

  1. 工資,也是最受關注的一點,幾乎是double
  2. 福利待遇 下午有水果,晚上加班有零食,有專門的健身房,打車報銷,各種活動(周年、旅游、年會...)
  3. 五險一金交的比例,其實很多人不重視這個,也不管公司是怎么給你交的,其實這是有很大區別的。舉個簡單的例子,之前是最低比例交的,之后是全額交的,后面兩個月交的公積金的錢,就抵上之前2年的交的錢了,這筆錢可以取出來的,一年就好幾萬!!!

  這么好,有什么缺點,當然有,加班多到你懷疑人生!!!

  跳到互聯網需要准備什么

  看到前面寫的那么多好處,是不是心動了?簡單說下跳到互聯網需要准備的:

  1. 首先,技術一定要達標,傳統行業和互聯網的技術,用天壤之別來形容,一點也不為過!不要覺得,在傳統行業呆兩年,只會做些簡單業務,只會抱怨公司這不好那不好,也不想想自己能為公司做啥,簡單業務都做不好,業余時間也不學習,就想跳槽到互聯網,我只能說:別做夢了!!!再跳到互聯網之前,沒人知道我付出了多少?
  2. 辛苦加班多,你要做好心理准備!!!帶來的就是節奏快,不停的開發、改bug...  

  

  每一次去大廠面試都被虐地很慘,但收獲還是很多的,分享出來,希望對你們很有幫助!!!

  筆試

  電話鈴聲響起,拿起電話,簡單問了下有木有時間,然后說加微信溝通,簡單問了下業務,然后出了一道筆試題,筆試題很有特色,只有一張圖片,如

  簡單介紹下題目吧:就是用三個線程打印出圖片中的效果,(注:C++沒有協程,python/go有,面的是C++,所以用c++實現的);要求:25分鍾運行出來並給出源碼

  下面是我的代碼,用了C++11的特性,供大家參考:

  

#include <iostream>
#include <thread>
#include <condition_variable>
std::mutex mtx;
std::condition_variable cv;
int ready = 0;
static int point_num = 1;  
void PrintString_1()
{
        std::unique_lock<std::mutex> lk(mtx);
        int cnt = 0;
        while(cnt<10)
        {
                while(ready != 0)
                        cv.wait(lk);
                std::cout<<"1";
                ready = 1;
                cnt++;
                cv.notify_all();
        }
}

void PrintString_2()
{
        std::unique_lock<std::mutex> lk(mtx);
        int cnt = 0;
        while(cnt<10)
        {
                while(ready != 1)
                        cv.wait(lk);
                std::cout<<"2";
                ready = 2;
                cnt++;
                cv.notify_all();
        }
}

void PrintString_3()
{
        std::unique_lock<std::mutex> lk(mtx);
        int cnt = 0;
        while(cnt<10)
        {
                while(ready != 2)
                        cv.wait(lk);
                std::cout<<"1";
                for(int i=0;i<point_num;i++)
                {
                        std::cout<<".";
                }
                ready = 0;
                cnt++;
                point_num++;
                cv.notify_all();
        }
}

int main()
{
        std::thread  t1(PrintString_1);
        std::thread  t2(PrintString_2);
        std::thread  t3(PrintString_3);
        t1.join();
        t2.join();
        t3.join();
        std::cout<<std::endl;
        return 0;
}
View Code

 

  編譯:g++ -o thread thread.cpp -lpthread -std=c++11,運行結果跟圖片中類似

  總結

  這類題也比較常見,主要考擦對線程同步的條件變量和互斥量這種架構的理解;其實,線程池也是用的這種架構。

  

  電話面試

  筆試源碼發給了面試官,大約10分鍾之后才開始電話面試,以為筆試就涼了,這么長時間都沒回復,電話面試長達62分鍾,問了超級多...,各種方便都問了

  C++基礎知識

  1、面試題用到C++11的特性,說下c++11的特性吧?

  2、提到了數量不定的模板參數,說說怎么實現的?

  3、說下左值和右值

  4、說下構造函數

  5、問了const和static

  6、有哪些智能指針?怎么實現的?

  7、類型轉換有哪些?

  ...

  還有很多就不一一列舉了

  進程和線程

  1、mmap是啥?

  2、IPC有哪些?

  3、線程同步?

  ...

  網絡編程

  1、說下TCP的三次握手和四次揮手

  2、怎么查看某個端口被監聽了(PS:不知道腦袋抽筋了說用PS,面試嗯?,馬上發現不對,是netstat)

  3、TIME_WAIT狀態?大量TIME_WAIT的原因?

  4、怎么實現一個長連接的TCP服務器?

  5、GET和POST的區別?

  5、curl訪問一個http服務器,都經過了什么?

  6、select和epoll的區別

  7、epoll的觸發模式

  ...

  Redis

  1、說下常見的數據類型

  2、說下哨兵模式

  3、分布式鎖

  ...

  Kafka

  1、怎么進行分區的?

  ...

  Mysql

  1、delete、drop、truncate的區別?

  ...

  

  總結

  經過了長達62分鍾的電話面試,還是涼涼了,怎么知道涼涼?因為最后結束的時候,面試官沒有說:接下來的流程,下一輪面試或者通知HR。就知道涼了,如果通過了,流程就會往下走,什么回去等結果?99%都是沒戲。舉個例子,去相親,看中對方了,你會說:你回去等通知吧?我考慮下我們合不合適? 相中的話,恨不得褲子都脫了,還等個屁!!!

  涼涼的主要兩點原因:1、基礎關鍵點沒回答上來  2、有些回答的不全面,面試官總是想聽到更多答案

  

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM