友人がAlibabaCloudのインタビューを受け、Waterlooに残酷に敗北しました。意外なことに、Huaweiの社内プロモーションの機会を得ました。私の経験を共有するためのオファー(Java開発ポスト)を提供したいと思います。

先月、私の相棒は小さな工場を辞めてアリババクラウドに乗り換えました。彼は素晴らしい履歴書を持っており、インタビュー通知を受け取ることに成功しました。しかし、その進歩により、相棒はその後の人生に疑問を抱きました。片面に吊るされていましたか?仲間は、ここ数年働いた後、何も進歩していないのだろうかと考え始めましょう。

幸いなことに、彼の友人に勧められた後、Huaweiのインタビューに行きました。Huaweiのインタビュープロセスは非常にスムーズで、すぐにオファーを受けました。これは仲間をさらに困惑させます.4つの側面のHuaweiの申し出のレベルで、Aliyunはインタビューしたときに殴られましたか?

簡単に言えば、今回のインタビューの経験を共有して、彼を参考にしてアイデアを思いつくことができるようにしたいと思います。

さらに、以下の仲間のレビュー資料をいくつかまとめました。困っている友達はそれらを転送してフォローし、VX(tkzl6666)を追加して無料で受け取ることができます。

Aliyunは経典を冷やします(そして1時間半も要求します、状況はどうですか?)

今回は心理的な戦いをしているような気がしました。男たち自身の防御は基本的に打ち負かされ、生命に疑いを持っていたため、プロセスはあまり良くありませんでした。多くの男たちがうまく答えなかったか、「武器不足」と答えました。 「足が少ない」または「余分」。

  1. プロジェクトのアーキテクチャ設計から展開プロセスまで、プロジェクトについて話しましょう。
  2. Javaコンテナとは何ですか?同期コンテナと同時コンテナはどれですか?
  3. ArrayListとLinkedListの挿入とアクセスの時間の複雑さ?
  4. Javaリフレクションの原則とアノテーションの原則?
  5. セノゾイックはいくつの地域に分かれていますか?ガベージコレクションにはどのようなアルゴリズムが使用されていますか?なぜこのアルゴリズムを使用するのですか?
  6. HashMapはどのような状況で拡張されますか、またはどの操作が拡張を引き起こしますか?
  7. HashMapプッシュメソッドの実行プロセス?
  8. HashMapがハッシュの競合を検出した後、要素はリンクされたリストの最後または最初に挿入されますか?
  9. 1.8では、赤黒の木は赤黒の木の特徴について話すためにも使用されますが、なぜ人々はAVLやBの木の代わりに赤黒の木を使用しなければならないのですか?
  10. httpsとhttpの違いは、他の安全な送信方法を使用したことがありますか?
  11. スレッドプールの動作原理、いくつかの重要なパラメータ、そしてスレッドプールがどのように機能するかを分析するためのいくつかの特定のパラメータを与え、最後にブロッキングキューの役割は何ですか?
  12. Linuxはどのようにシステム負荷をチェックしますか?
  13. springmvc処理リクエストのプロセス全体を詳しく説明してください。
  14. AtomicIntegerについて話してください、なぜ同期の代わりにCASを使用するのですか?
  15. クエリでインデックスを使用しない状況はどれですか?
  16. データベースインデックス、最下層はどのように実現されますか、なぜBツリーインデックスを使用するのですか?
  17. Mysqlマスタースレーブ同期の実現原理?
  18. MySQLはB +ツリーをどのように使用しますか?
  19. データベースの楽観的ロックと悲観的ロックについて話しますか?
  20. どのNoSQLデータベースを使用しましたか?MongoDBとRedisに適用できるシナリオはどれですか?
  21. 分散トランザクションのTCCサービス設計について説明してください。
  22. Redisとmemcacheの違いは何ですか?Redisがmemcacheよりも優れているのはなぜですか?
  23. redisを検討する際、容量を考慮しましたか?おおよそのデータ量はどれくらいですか?
  24. 分散ロックと分散グローバル一意IDの実装比較について話しますか?
  25. クラスターを監視する場合、どの技術的指標に焦点を当てるべきですか?これらの指標を最適化する方法は?
  26. 数千万のデータから数十億のデータまで、どのような技術的課題に直面しますか?あなたの技術的な解決策のアイデア?
  27. 過去2年間に遭遇した最大の挫折、あなたは挫折から何を学びましたか?
  28. 最近、新しいテクノロジーを学びましたか?

Huaweiの4つの側面:3ラウンドの技術的側面+ HR側面(Huaweiの真実、参照に値する)

Huaweiのインタビュープロセスは非常にスムーズです。一方で、質問は比較的基本的であるため、全体として非常に自信があります。また、インタビュアーはプロセス全体を通じてより「親切な」質問方法であるため、比較的簡単であるため、インタビューはスムーズに進み、オファーもあります。速い。以下は、HRを除くバディHuaweiからの4つの技術的な質問です。

Huaweiの技術面:

  1. オブジェクト指向の特徴と6つの原則について簡単に説明します
  2. ファイナル、ファイナル、ファイナライズの違いについて話します
  3. Javaの==、equals、hashCodeの違いと接続
  4. JavaコンテナArrayList、LinkedList、HashMap、HashSet、およびアプリケーションシナリオの理解について話します
  5. スレッドの基本的な状態、wait()sleep()yield()メソッドの違いについて説明します。
  6. JVMパフォーマンスチューニングの監視ツールは何ですか?
  7. JVMメモリモデルとvolatileキーワードについて簡単に説明します
  8. ガベージコレクターとメモリ割り当て戦略
  9. ゴミ収集アルゴリズム
  10. MySQLで一般的に使用されるいくつかのストレージエンジンの違い
  11. データベースの分離レベル
  12. 5億個の整数の大きなファイルを並べ替える方法は?

Huaweiテクノロジーの2つの側面:

  1. Javaメモリモデル
  2. フルgcをトリガーする方法は?
  3. gcアルゴリズム
  4. JVMリサイクル戦略
  5. ClassLoaderの原理と応用
  6. ハイスループットに使用するgcアルゴリズム
  7. ConcurrentHashMap和HashMap
  8. 揮発性の最下層を実現する方法と可視性を維持する方法は?
  9. オープンソースプロジェクトに参加しましたか?
  10. スレッドプールの原則、拒否戦略、コアスレッドの数
  11. 1億の携帯電話番号、繰り返しの判断
  12. スレッド間の相互作用の方法は何ですか?スレッドインタラクション(結合)用のラッパークラスはありますか?

Huaweiテクノロジーの3つの側面:

  1. 2回のクリック後に注文が繰り返されないようにするにはどうすればよいですか?
  2. データベーステーブルの設計、インデックス
  3. Redisのキャッシュ除去戦略と更新戦略
  4. ダボ、ネティ、RPCの原則の概要
  5. 電流制限アルゴリズム
  6. zkが電話を切った場合はどうすればよいですか?
  7. 分散ロックの実装、zk実装とRedis実装の比較
  8. 突然のトラフィックのバーストに対処するためのスパイクシーンのデザイン
  9. 分散データの一貫性
  10. 一貫したハッシュ
  11. メッセージキューの原理の紹介
  12. 注釈の原理
  13. データベースの原則、データベースミドルウェア、インデックスの最適化
  14. iocの原則、aopの原則、およびアプリケーション
  15. ビッグデータ関連、MapReduce
  16. Dockerの原理

大昌インタビュー質問回答

 

 

 

実際、バディは幸運な人ではなく、勤勉な人です。今日、これらはすべてバディの努力に基づいています。AlibabaCloudは側が寒いですが、Huaweiに入るための長年のバディと見なすことができます。蓄積、以下は仲間によって共有される個人的な学習方法と経験の要約です。

学習方法と経験の概要

以下に示すすべての情報は、無料で共有および転送+フォローしてから、VX(tkzl6666)を追加して無料で入手できます。

(1)複数の質問

自分で面接の質問を増やすことは非常に重要です。面接が必要ない場合でも、大小の工場が面接で何を尋ねるかを常に理解する必要があります。より人気のあるテクノロジーなどは何ですか。では、仲間はどのように質問を書いたのでしょうか。質問は主にJavaテクノロジーとアルゴリズムの2つのカテゴリに分類されます。[JavaCoreKnowledge]や[AlgorithmBrushing]など、比較的新しい質問帳がいくつか収集されています。たとえば、アルゴリズム用のLeetCodeがあります。

Javaインタビューに不可欠なコアナレッジポイント:

 

アルゴリズムブラシ質問LeetCode:

 

(2)テクニカルカウの実際の戦闘帳を見てください

実際、多くの人の現状は、実践的な経験が不足している、または始め方がわからないということです。さて、より熟練した人が書いた実用的な本を読んで、実践的な経験を学ぶのは良いことです。現在、私が編集した実際の戦闘本は、Spring Family Bucket、JVM、コンカレントプログラミングテクノロジー、Redis関連、MySQLチューニング、Tomcat、ZooKeeper、その他の高度なテクノロジーを含め、比較的包括的です。

 

 

(3)もっとコミュニケーションを取り、もっと考える

強調すべき最後のポイントは、より多くのコミュニケーションとより多くのことを考えることです。今日、多くのプログラマーは奇妙な輪に陥り、一日中オフィスで機械的にしか働いていません。実際、プログラマーが大きくて明白な進歩を遂げたいのであれば、コミュニケーションは不可欠です。では、自分よりも優れた人とどのように出会うのでしょうか。実際、チャンネルはたくさんあります。私の個人的なアプローチは次のとおりです。①テクニカルライブブロードキャストを視聴してライブブロードキャストルームで友達を作る;②テクニカルコミュニケーショングループを追加して質問を交換する;③フェイスベースやセミナーなどのオフラインアクティビティに参加する。 。

最後に書く

学ぶことは登山のようなものです。肉体的、精神的疲労はありますが、途中でもっと美しい景色があり、登った後どこまで見えても。その後、あなたはいつもあなたがしたことは価値があると嘆くでしょう。

上記のインタビューの質問と学習資料は、誰とでも無料で共有できます

おすすめ

転載: blog.csdn.net/JavaBUGa/article/details/109289455