網路上有很多的面經,關於演算法部分也有很多優秀的刷題網站,本題想請教一下如何準備大廠面試中的專案部分,關於JVM以及Algorithm和Linux等方面不討論。
透過使用ssm框架,在熟悉流程之後,一般可以在幾天之內迅速搭起一個網站,題主大一開始的時候做過一些圖書館管理專案之類的。後來我覺得CS基礎知識比較薄弱,就開始刷Coursera上面的一些公開課,期間隨著machine learning的火爆也去跟風了一下。幾個月之類就沒太接觸過Java了,但是現在看國內的行情,阿里和美團等大廠的架構也是基於Java的,決定以後還是往Java方向發展,想提前為暑假之後的秋招做準備,演算法和CS基礎課程部分應該沒有太多的問題,GitHub上面也只有一些Python項目,Java方面項目怕到時候過不了關。
以前用各種框架做的xxx管理系統,個人部落格之類,業務太簡單,在面對面試官提問:你遇到過最難的問題是什麼?你是如何解決的? 之類的問題的時候,靠這些項目肯定不能過(裝)關(逼)。所以想請教一下各位朋友,在準備大廠校招的時候,項目方面我應該如何展開,顯得高大上一點,能否推荐一些適合展開的項目,主要是感覺項目應該面向什麼業務方向目前沒有太多的靈感,求推薦一下,之前學Python爬蟲部分玩膩了,雖然這裡也可以在並發和異步方向展開,但是現在不是很想往爬蟲方向考慮。專案中一定有帶有一些自己造的輪子,到時候才好展開,求各位推薦一下思路。
ps: 國內的一些網站例如慕課網之內的專案太簡單了,大一的時候跟過,而Coursera, Udacity以及四大的官網公開課上面都是偏理論的。在知乎,Quora等網站有很多有哪些適合新手做的Java專案的優秀回答,但是太簡單了一點,面試的時候不適合展開。
寫了一大堆,主要想問的就是:有什麼好的業務場景可以在使用ssm等框架的基礎上利用資料庫緩存,並發和分散式等方面的知識?
简单社交网络,实现关注取关、发布评论、时间线(重点)。
做好缓存,加点推荐,弄个搜索,学习下 CI,再看看怎么水平扩展。
其实能展开的点很多的。
入门级新手表示可以做一些关于分布式高并发的项目
谢邀。
举个例子吧,一个简单的用户中心,包括注册、登录、修改密码、重置密码、单点登录接口功能,就有得你做上几个星期了。再加上权限的话,做几个月也是可以的。
在项目开发过程中,一定会遇到以下这几个难点,都是面试时可能被问到的:
用户的ID如何识别(用用户名、手机号还是邮箱)
密码该怎么保存(如何防止拖库、撞库)
如何安全地登录(密码如何不让别人截获或猜出来)
忘记密码怎么办(找回密码有哪些手段)
单点登录接口如何设计(需要哪些API)