我的看法
hardware和sap相差非常远. 其实我觉得hardware也十分有前途的.
你要想换方向, 一定需要考虑清楚.
裁员是你公司的效益不好了, 不是说hardware的工作不好了.
要知道做sap的也在裁人.
一句话, 你的动机不对, 需要好好考虑一下.
知道这个境界很重要吗?
呵呵,突然想问这个问题: 知道这个境界很重要吗?
你如果喜欢java的话, 学它就是了. 同时找工作, 当你找了java的工作, 自然也就说明达到一种境界了.
我感觉你其实是想知道: 学习java达到找工作的境界, 难不难? 花的时间多不多?
摸摸胸口问自己, 是不是这样想的?
如果我告诉你java很难, 要花很多时间,你是不是会不学java了?
我希望你还会学习它, 我希望java是你的真正"兴趣"所在!
如果不是这样, 你就要想想自己的 Original Dream 是什么? 是hardware, 是sap, 是金融分析员, 还是blahblah. 然后,再朝它努力, 相信你一定能够达到很高的境界.
我的感觉是: With "Curiosity", you can get the TOP level.
摸完胸口后.....
如果你告诉我java很难, 要花很多时间,我还是会学java.
我同时也想知道: 学习java达到找工作的境界, 难不难? 花的时间多不多?
在大学学java时其实是蛮喜欢的,有时能两天两夜不眠不休的翻查书本,上网搜索,盯着电脑想solution.
可是毕业后找第一份java工找得十分不顺利,应征了十几家都没着落,心也就淡了。这三年来来回回干了销售,event,hardaware 的工作,工作之余也会看看sun.com上有些什么新东西,和在干JAVA工作的朋友聊聊行情。
也许这次是上天给我个机会让我好好想想究竟想干什么工作。也是时候好好想想了。
在此谢谢各位的帮助和意见。^^
Java ...
找 Java,J2EE 工作
希望给你一些参考。
首先,确定你找什么样的职位?
- Junior (1-2 years)
- intermediate (3-5 years)
- senior (5-7 years)
- architect (7-10 years or 10 years +)
所以,你可以根据自己的工作年限,对号入座。这是 HR 的标准。每个公司会有出入,但相信差别不大。
其次,技术的要求:
- JavaServer Faces (RichFaces,...), Struts 这些是比较流行的,JSF 现在开始占据主导地位,要想找好工作,这个应该要会。AJAX 也是应该会的,但许多 JSF 的 implementation 里,都支持 Ajax, 不用自己会写 Ajax 的 Java
- POJOs, EJB 2.0, 3.0, Spring 这些是 business tier 要知道的。特别是 Spring Framework, 许多中小公司特爱用,主要是 open source 的。如果没用过 Spring,起码要知道什么是 DI (Dependency Injection), IoC 等概念。
- Hibernate, TopLink, JPA 这些是 ORM 的技术,至少精通其中一个, 因为他们相同。这个是 must have 的技术。Sun 的趋势是走 EclipseLink,基于 TopLink 的 code base 的 community edition.
- AOP (Aspect oriented programming), Annotation 都应该知道,最好有实战经验。
- Design Patterns: GoF, Core J2EE Design Patterns 都应该精通,要会每个 patten 的 class diagram,知道都干什么用。
- Methodology: RUP (Rational Unified Process) 和 Agile Method (Scrum, XP)都要知道他们的有缺点,为什么现在都用这个,而放弃了传统的 SDLC?
- Architecture and Design: N-tier architecture, Layer/Tier Architecture etc. How to design a system?
- Software Architecture: 4+1 view of architecture, Zachman architecture, DoDAF, SunTone Architecture, TOGAF, etc, 至少知道一个。尤其是申请 Architect 职位,我建议至少知道 2 个。
- OOAD & UML: inheritance, polymorphism, generalization, realization, abstraction, encapsulation, etc. 知道如何用 UML 表述.
- Web Services & SOA: How to implement WS? WS-Security? Describe SOA solution stack? What is ESB? BPM?Service oriented analysis and design: Identification/Specification/Realization. 主要还会问到具体的 platform 上,比如 IBM Process Server 和 Integration Developer,或是 BEA Acqulogic ESB。还有比如 JAX-RPC 和 JAX-WS 的区别?
一般面试时,我都会问你在书本上找不到的问题,比如给你个 Scenario,如何 design a class diagram? Show the associations between the classes, and multiplicity.
我还会问一些 design pattern 的问题,或是比较两个 patterns 的不同用处。
请同学们准备至少两个 success stories,面试时用得到。
有些 tough questions you should be well prepared before interview:
- Why are you leaving your current company?
- How to deal with people whom you don't like?
- What are your weaknesses?
- How much are you looking for? Please give a figure.
如果你是牛人,我会问你:Have you designed your own custom framework? What is your intent and what problems do you try to address? What patterns do you use in your framework and why?
If you pass 90% of the questions, you're hired as an architect.
还有很多, 后面的,要收学费了,哈哈。