私は仕事を探している友人を探してgive'mまたは少し助けを準備することを期待して、同社はほとんどのポイントが同じであると感じ、その下に彼らの経験訪問し、企業の数をインタビューしました。また、アリはまた、現在のアイデンティティからインタビュアーの求職者をしていることは、多くの点で問題がない同じを見て、インタビュアーとなりそう求職者の視点だけでなく、面接の両方の視点を下回ります。
インタビュープロセス
大企業は、一般的に3〜4ラウンドの技術的、HRのいずれ直面しています。アリで、私は最初の2ラウンド、4つの技術面の合計を経験尋ねると、プロジェクト実施のための主要な基礎である、最初の3つは、プロジェクトの実施と開発を依頼する主に、顔、2回の面接に交差しています。最初の4つの部門が上司に直面している、主要なインフラ、技術とビジネスのいくつかの、個人的な開発より抽象的な事柄を理解するために要請しました。
HRの表面は主に、あなたの個人的な安定性、価値、イニシアチブ、などを見て、あなたとチャットされ、一般的にHRの人にリンクされていないが、HR側の多くの人々がハングアップ、理由はあなたのHRではありません(いくつかの例外)が悪いの顔がありますが、一般的には、いくつかの顔を表示する前に、60ポイント(そう直接面接の前にあなたにリンクされていない)が、それはより高くなる80点に達していなかった、今回の会社他の候補者およびその他の考慮事項に比べ基づき、HC、才能比、および複数の次元、あなたが提供する与えるかどうかの最終決定。
また、その特別な下にあるとされたアルゴリズムの研究に今日の見出しは、より多くのだろう、私は4つの技術に直面して、各ラウンドは1-2質問アルゴリズム、簡単にメディアの難易度で、おそらくleetcodeを聞いてきます。だから、優秀な学生は、ブラシヘッドラインのタイトルを行きたいです。
ポイントことに注意してください
- 2に再開1は、プロジェクトの経験が、同じ被写体に約2~3を書くプロジェクトのほとんどのハイライトを書き込んでくださいすることが最良です
- はっきり書くのに時間の仕事の経験を開始し、大企業がバックトーンを持っていながら、マージまたは省略仕事の経験のいくつかの比較的短い期間をしていない、インパクトがちょうどインタビューではないかもしれないが、後でこの会社に取得できない場合があります
- インタビュアーの質問については、あなたが答える前に明確に考えるように、あなたが必要な時間が比較的長くなる可能性があることを感じた場合、私の思考のそのアイデア、面接での私の次のクラスの仕上げとすることができます
- 問題は直接、ノーと言うではないだろう遭遇理解するふりをしていません
- 特定された問題が発生したコンペア、インタビュアーが時々故意に懐疑的なトーンがあなたを検討することと確信がなければなりません
- インタビューの間、発話速度や関節への注意を払う私は面接を行い、後に、多くの人々がすぐに話をする傾向がある、またはろれつが回らないが、またそれ以外のインタビュアーがあなたが(特に上の点を答えなかったという感じになるだろうな問題を引き起こすことがわかりました電話面)
- 面接のプロセスは自信を持ってますが、面接で争っていないことができます
- インタビューの結果後のインタビューで直接質問しません
- ハッシュマップの拡張を強制的に尋ねられたとき、私はハッシュマップはよく知られていると言うために候補者を尋ねた後のインタビューで、自信を持ってますが、傲慢ではないこと、結果は無知なハッシュを再計算する必要はありません。多くの人々のために、あなたが注ぐ尋ねるインタビュアーを置くための方法が常にあります。
- 各インタビューがされた後にまとめ答える悪いところがあるを取り除くために、どのような知識は盲目です。
- 尋ねられたとき、なぜ、新しい仕事をしたいというTucao元の会社よりも、理由ビューの独自の観点から開発。
インタビューは常に= +運面接の結果の強さということを覚えて、自分自身を疑うようになったので、最も重要なことは、数回失敗しません。時には、あなたは彼が知らないものを尋ねるために多くの時間を過ごすことができなかったので、インタビュアーは、ない何かが得意であってもよく、時々 、彼はあなた、あなたでしょうが、他の質問がされているためか、緊張やその他の理由を求めることができます、スムーズではありません。
研究では、関連技術を言うようになりました
財団
以下は、私はそれは多くの場合、不完全な、知識のポイントに調査されると思うが、それらのほとんどは一般的な面接の質問です面接を終えています。
Javaの基礎
セット
コレクションには、2つのブロックに分かれています。スレッドの安全性を非スレッドセーフのコレクションにし、java.utilのjava.util.concurrentパッケージコレクションの下に。
リスト
ArrayListのとLinkedListの実装との違い
地図
- HashMapの:拡大を避けるために、紛争解決(リストと赤黒木)、展開のタイミング、時間の最適化の焼き直しをハッシュする方法、データ構造を理解します
- LinkedHashMap:基本原則を理解し、どのような2整然とした、LRUを達成するためにそれを使用する方法
- TreeMapの:キーのターゲットは、インターフェイスを比較達成するためにでなければならない理由を確認するために、データ構造を理解し、一貫性のあるハッシュを達成するためにそれを使用する方法
セット
基本的に対応するマップによって達成設定し、簡単なように見えます
よくある質問
- 競合を解決するハッシュマップをハッシュする方法、なぜ、リスト内のハッシュマップは赤黒木に変身する必要がありますか?
- 展開をトリガするときはHashMapの?
- jdk1.8の前に無限ループのハッシュマップはなぜ並行性の問題がある場合?
- ハッシュマップの拡張は、各エントリのために一回計算する必要がある場合は、それをハッシュ?
- なぜハッシュマップ配列の長さは、2つの電源を確保するには?
- LinkedHashMapでLRUを実装する方法?
- ハッシュのTreeMapとの整合性を達成するためにどのように?
スレッドセーフなコレクション
Collections.synchronized
実装原理を理解します
CopyOnWriteArrayListと
理解複製メカニズムはなぜ無ConcurrentArrayListについて考え、そのアプリケーションのシナリオを理解し、書きます
ConcurrentHashMapの
拡張最適化は、ハッシュテーブルと比較したときに行うには、実装の原理を理解します。
BlockingQueueの
了解LinkedBlockingQueue、ArrayBlockingQueue、DelayQueue、SynchronousQueue
よくある質問
- ConcurrentHashMapのは、同時並行の安全性を確保することでパフォーマンスを向上させるためにどのようにでしょうか?
- ConcurrentHashMapのは、同時に複数のスレッドが拡張に参加できるようにする方法ですか?
- LinkedBlockingQueue、DelayQueueはどのように達成することですか?
- CopyOnWriteArrayListとは、スレッドセーフを保証するためにどのようにでしょうか?
によって複雑
同期
違い偏っロック、軽量ロック、コンセプトを理解し、ヘビー級ロック機構をアップグレードするだけでなく、とReentrantLockの
CAS
AtomicIntegerが実装原理、CASアプリケーションシナリオを理解し、どのように楽観的ロック
AQS
内部実装AQSを理解し、実現などAQSなどの同期クラスに依存してReentrantLockの、セマフォ、たCountDownLatch、CyclicBarrierをなど
ThreadLocalの
ThreadLocalの使用シナリオと内部実装を理解します
ThreadPoolExecutor
スレッドプールのために働き、いくつかの重要なパラメータを設定
よくある質問
- 違いは、ReentrantLockのと同期?
- での楽観と悲観的ロックの違いは?
- 楽観的ロックを実装するには?
- AQSは、次のスレッドをウェイクアップする方法ですか?
- どのように達成するためにどのように株式と非株式ReentrantLockのロックを達成するのですか?
- たCountDownLatchとCyclicBarrierを差?何が最良の場面を作品?
- 何が該当するのThreadLocalに注意すべき?例えば、メモリがリークしますか?
- スレッドプールのタスクは何が起こるかについて話して送信しますか?
- いくつかのパラメータのスレッドプールを設定するには?
- それがリリースされる非コアスレッドプールのスレッド?
- デッドロックのトラブルシューティング方法?
IO
多重化メカニズムを理解BIOとNIOとの違いを学びます
よくある質問
- 同期ブロック、非ブロック同期、非同期の違いは?
- 、投票を選択し、違いをeopll?
- BIOとJava NIOの違いは?
- どのようなリファクタリングスレッドモデル?
JVM
GC
ガベージコレクションは、基本的な原則は、ガベージコレクタのいくつかの共通の特徴は、CMS(またはG1)との重要なパラメータの数を理解することに焦点を当て
メモリ領域
JVMのメモリは、分割はっきり言うことができます
よくある質問
- いくつかの段階に分けているCMSのGCの回復?彼らは何をやったのですか?
- CMSの重要なパラメータは何を持っていますか?
- 並行モデルの失敗とParNewプロモーションは何が起こるか失敗しましたか?
- CMSの長所と短所?
- 何GCチューニングが行われていますか。
- なぜ古いと若い世代の分割され?
- 若い世代はエデン、遺族の領域に分割されたのはなぜ?
- なぜ若い世代は、レプリケーションのアルゴリズムを使用していますか?
- マークのの古い使用は、マーク照合アルゴリズムは明らかである理由
- どのような状況下では、外部メモリヒープの使用?何に注意を払いますか?
- どのように外部ヒープメモリを回復していますか?
- JVMメモリゾーニングは何ですか?
春
豆ライフサイクル、円形の依存関係、(プロジェクトが使用しているような)ばね雲AOPを達成するために、ばねトランザクション伝播
よくある質問
- Javaの動的プロキシCGLIB差と動的エージェント(彼らがここまで尋ねたので、多くの場合、春と一緒に使用)
- 何のライフサイクルにおける春の豆?
- 問題はどのような円形の依存性注入とコンストラクタ・インジェクションプロパティを持っていますか?
ダボ(または他のフレームのRPC)
ダボの実装の共通理解としてRPCフレームワーク:サービス検出、ルーティング、非同期呼び出し、ダウングレードを制限し、失敗の再試行
よくある質問
- ダボは、負荷分散を行う方法は?
- どのようにダボは、ダウングレードを制限するのですか?
- どのようにダボエレガントなサービスをオフライン?
- どのようにダボ非同期呼び出し?
RocketMq(または他のメッセージミドルウェア)
このようRocketMq実装などのメッセージング・ミドルウェアの共通理解:高可用性と高スループット、メッセージシーケンス、繰り返し消費、取引メッセージ、遅延メッセージ、配信不能キューを確保する方法
よくある質問
- どのように高可用性を確保RocketMq?
- どのように高いスループットを確保RocketMq?
- RocketMqのニュースは、それを命じたのですか?
- RocketMqが保証されているローカルニュースを注文するには?
- 実装メカニズムRocketMqトランザクションメッセージ?
- 問題は、それの消費を繰り返すことRocketMq?どのように解決するには?
- 遅れたメッセージのどのレベルのサポートをRocketMq?どのようにそれを達成するには?
- RocketMqは、プッシュモデルまたはプルモデルのですか?
- 消費者の負荷分散は、どのようにのようなものでしょうか?
Redisの(または他のキャッシュシステム)
Redisのワーキングモデル、Redisの持続性は、Redisのは、分散したクラスタの一般的な形式、分散ロック、バッファ破壊、アバランシェキャッシュ、キャッシュコヒーレンシ問題のRedis、除去メカニズムを期限切れ
よくある質問
- なぜ、Redisの高性能?
- シングルスレッド、マルチコアCPUのRedisのマシンを使用するには?
- Redisのキャッシュ制圧戦略?
- どのようにRedisの永続的なデータ?
- いくつかのデータ構造を持っているのRedis?
- いくつかのフォームを持っているのRedisクラスター、?
- Redisの中に、より効率的なメモリ内に格納する方法を、大規模なキーと値が比較的小さいデータでありますか?
- でデータの一貫性とRedisのDBを確保するには?
- 雪崩に浸透キャッシュとキャッシュを解決する方法は?
- Redisので分散ロックを実装する方法?
MySQLの
トランザクションの分離レベル、ロック、データ構造、インデックス、クラスタ化インデックスと非クラスタ化インデックス、左端のマッチング原則、クエリの最適化(コマンドの説明)
よくある質問
- いくつかのトランザクション分離レベルを有している(以下同じinnondb)のMySQL、?
- 別のトランザクション分離レベルのロックが追加されます何ですか?
- MySQLの行ロック、テーブルロック、ロックギャップ、意図的ロックは何をしていますか?
- 左端の試合で何についての話?
- 遅いクエリを最適化するには?
- MySQLのインデックスは、なぜのB +ツリーの代わりに、B木、赤黒木であります
- サブサブサブテーブルのライブラリテーブルのキーを選択する方法
- サブライブラリーサブテーブルの場合は、クエリは、一般的にどのように並べ替えるんですか?