疫情之下,確實行情不好,相比去年招聘信息少了很多,因為去年這個時候我也在跳槽。建議:不是非要離職的話,以穩為主,不要瞎跳!!!有錢任性的話,隨意了
疫情離職
疫情之下的面試益處
疫情之下帶來的跳槽好處,就是面試帶來了方便,之前面試你必須要去公司,你說可以電話面試么?HR一定會說:不可以!!!現在不一樣了,如果你說:可以去公司面試么?HR一定會說:你隔離滿14天了么?...。所以為騎驢找馬帶來了方便,電話或視頻面試,可以拿offer了...
原因
看到這個標題,你們一定很好奇為啥離職?原因主要有以下幾點:
- 太辛苦,每天都要半夜1/2點下班,一周6天
- 呆着不舒服
原因涉及到關鍵詞就是"健康",熬夜加班會直接影響身體健康!!!呆着不舒服會影響心理健康,其實很多人並不重視心理健康,不是我瞎白活的,鍾南山院士,也說過:人的身體健康,一般源於心理健康。
職業規划
無論畢業、還是跳槽找工作時,一般都會問到職業規划。
畢業時,沒有規划、也不知道職業規划,很盲目,不知道自己能做什么,能找到一份工作就可以了。
工作之后,漸漸有了目標,知道我要做什么,我能做什么...。
先說說我的職業規划吧:一直會做linux C/C++開發, 畢業五年之內,會去嘗試不同的行業和技術方向,去學習、沉淀一些東西,五年之后,爭取進入大廠,穩定下來。
行業很重要(傳統和互聯網)
之前的文章也有透露過,是從傳統IT行業跳到互聯網的,列出簡單的幾點區別:
- 工資,也是最受關注的一點,幾乎是double
- 福利待遇 下午有水果,晚上加班有零食,有專門的健身房,打車報銷,各種活動(周年、旅游、年會...)
- 五險一金交的比例,其實很多人不重視這個,也不管公司是怎么給你交的,其實這是有很大區別的。舉個簡單的例子,之前是最低比例交的,之后是全額交的,后面兩個月交的公積金的錢,就抵上之前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; }
編譯: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、有些回答的不全面,面試官總是想聽到更多答案