TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: How do you get started in enterpirse Java development?

11 点作者 vital101大约 15 年前
I've been around this community long enough to know that "Java" is almost a bad word, but hear me out. In my area (Western Michigan), there is an abundance of jobs that require experience doing enterprise Java development. I'm currently a web developer(PHP), and would like to branch out a bit in to Java programming as a profession.<p>The thing is, even entry level Java jobs are looking for at least 1 year of experience. I used Java during my academic career extensively, and consider myself proficient with it. However, since I don't have any "real" experience, nobody is willing to look my way.<p>So, my question is: How do you get started in enterprise Java development? What is the best way to gain experience without giving up on the current day job that pays the bills?

8 条评论

hapless大约 15 年前
Job postings are built something like children's wish lists for Santa. Your kid doesn't actually expect a pony AND a nintendo AND a dog AND a trip to disneyland. Entry-level job postings don't actually expect 3-5 years of experience.<p>It's normal to be ignored over and over and over when you submit resumes. It's the hardest road to employment. Because 99% of applicants are crap, no one applicant gets a lot of attention. Tweak your resume, make more phone calls, keep trying.
评论 #1291424 未加载
评论 #1291306 未加载
patio11大约 15 年前
Learn a model/view/controller framework like CakePHP or Rails. It will make enterprise Java development much easier, since you'll know the core concepts in a language that you don't have to fight every step of the way to do things in. (I say that as a former Big Freaking Enterprise Java developer.)<p>Learn core Java, paying particular attention to how to use CS101/201 stuff like loops and collections. Know how to work with HashMaps. Creating hash maps, passing them around, iterating over their keys, etc, is going to be a huge portion of your life.<p>Then start learning Spring, Hibernate, and the rest of the J2EE alphabet soup. You don't have to know everything on day one: if your job needs a lot of SOAP, read up on SOAP, if they need web services implemented in a reasonable amount of time, read up on RestEasy, etc etc.<p>You'll also want to pick up the usual web dev breadbasket if you don't already have it: HTML, CSS, Javascript, SQL, basic Linux system administration, basic system architecture, etc etc.<p>Also: Java code monkeys are cheap, domain experts who can code are expensive, optimize accordingly.
bad_user大约 15 年前
&#62; <i>How do you get started in enterprise Java development? What is the best way to gain experience without giving up on the current day job that pays the bills?</i><p>Those jobs postings are usually written by HR people that have no idea what they are talking about.<p>My advice ... apply for that job anyway, even if you don't meet the requirements.<p>But you should be careful ... don't lie about your expertise. In good companies your interview will be done with other developers. If you are indeed capable, but you get rejected because you don't meet that checklist, you should be grateful for that.
plinkplonk大约 15 年前
"How do you get started in enterprise Java development? What is the best way to gain experience without giving up on the current day job that pays the bills?"<p>Find a small business that needs a web app and build it for them using your favorite technology stack. That's how I started. Show your interviewers the code - shuts off a lot of stupid gotcha/trivia questions.<p>(due disclosure: Though I worked on enterprise dev for 10 years I haven't done it in the last 8 years or so. I got completely bored and the projects all started to blur into each other and so I shifted to algorithm intensive AI/machine learning sw. But it was kinda fun for a while and I worked with some great people and companies. I recently talked to some of my ex colleagues and nothing much has changed in enterprise dev.)
评论 #1290994 未加载
zackola大约 15 年前
Build something slightly enterprisey but really simple. Make sure it uses lots of enterprise buzzwords like XML, LDAP, SOAP, and UML. You could make something pretty simple that an enterprise client might find useful, like some sort of process management tool, otherwise known as flowcharts. Generally the only difference between enterprise software and not is the price tag. Surely there are exceptions to this.<p>I'd also suggest that before you dedicate a significant part of your life to learning something because there is currently a high demand for it in your geographic area, you may want to consider reading the excellent:<p><a href="http://www.pragprog.com/titles/cfcar2/the-passionate-programmer" rel="nofollow">http://www.pragprog.com/titles/cfcar2/the-passionate-program...</a><p>Check out the reviews on amazon - might also be helpful to look at reviews for the out of print My Job Went to India. The passionate programmer is the 2nd edition of this book I gather.
jbooth大约 15 年前
Read Effective Java by Josh Bloch -- take those lessons to heart and prepare to be dismayed at how poorly designed 7 figure "entreprise" software really is. Then struggle against it for a few years until you say "screw it, my next job will only involve the Collections API, util.concurrent and nio libraries".
umjames大约 15 年前
Here's what I did back in 2001. I already knew my way around the Unix command line, so if you don't, that's obviously a first step. I learned the following technologies in order:<p>1. HTML (basics, you won't need to know every tag) 2. CSS (basics again, you can fill in the holes as you come across them on projects) 3. JavaScript (bare bones, no frameworks, you'll learn them later for actual projects) 4. Servlets (you'll need to also learn a servlet container at the same time, I recommend Tomcat. You can use JBoss when you understand the basics of Java web app deployment and configuration.) 5. JSPs (since they are shorthand servlets at runtime) 6. Basic database administration and SQL (I chose MySQL here) 7. JDBC (the core of all database access in Java)<p>At this point, I started to branch out. There's an endless number of web frameworks out there, I don't know which is the most popular now for Java, but pick something you like. You'll also want to learn an ORM like Hiberenate.<p>You will need to know some supporting technologies and some alternatives. For example, you'll need to know Ant as most Java projects are built using it. Velocity is a popular alternative to JSPs. Just make sure you don't ever stop learning new things.<p>One last bit of warning: If you ever find yourself bored or frustrated with enterprise Java development (especially if you end up on an enterprise portal project), don't think you have to stick with it. Always invest some time in something outside of the technologies you use everyday. That way you'll always have options.
raju大约 15 年前
I work using the Enterprise Java stack. This may be obvious, but let me start here - Java Enterprise involves understanding the spec (essentially the API) and then understanding how a vendor implements the same (e.g. JAX-RS vs. RestEasy).<p>Furthermore - the Java ecosystem is huge. There are multiple vendors for each API, and trying to find a starting point can prove to be overwhelming.<p>My advice - start with something small and move from there. The Spring Framework (which at it's core is merely a Dependency Injection framework and does not implement a J2EE API) is something a lot of Java shops use to wire their applications together, and can be used even on a stand-alone Java/Swing application. The Spring documentation is pretty comprehensive.<p>After that - try to implement persistence - This will introduce you to JPA (Java Persistence API and potentially EJB) and a persistence provider (like Hibernate). Again, go lightweight using a in-memory DB like HSQLDB or H2 so you don't spend time tweaking a DB).<p>Then you are ready to take on something a little bit more complex like a web-app. Look into the Servlet API (this forms the basis of a lot of front-end technologies in Java like JSPs).<p>This should be a good starting point. If you need something more, drop me an email (in my profile) and hopefully I can help.<p>Good luck.