Java Consulting tips for Beginners
Embed Size (px)
Transcript of Java Consulting tips for Beginners
- 1. What does it mean to be a Software (Java/J2EE) Consultant ?
Presented by : Sathish Chittibabu
Date : May 15th2010
Event : Marlabs Training Event
2. Coding Styles
Good coding styles with proper comments, documentation etc.,
Try to make it Javadoc complaint So you can generate Javadocs when you build and deploy your code
Try to use Standard code templates (Organization specific) imported into your IDE
Be aware of Too Much and Too Little comments
3. Code Templates Eclipse IDE
4. Coding Styles Example
5. Version Control (SCM)
Learn to use the version control system
Be disciplined in checking in your work in SCM
Avoid stepping on others toes
Provide proper comments/notes when checking in your work
Keep your Unit/Local development environment synced up
6. Test Driven Development (TDD)
Unit test your code
New development, Bug fixes, Enhancements
Write junit test cases for every class you write
Try to test every line of your code (Full test coverage)
Automated test coverage report during build process
Use Springs Junit test Framework
7. Build, Deploy Process
Unit/Local, System, Integration, UAT, Production
Know your project build, deploy process
Ant builds or Maven builds know how to do it
Manage your different build versions in different environments
8. Project Design
Be prepared to write a design doc, summary doc for the work you have done.
Ability to explain the design (the module/use case) to peers in simple terms with much clarity.
Be open to accept design/code review comments
Dont get defensive and don't take things too personal.
9. Task Estimates for Building REST WS
Most of the projects are Agile/Scrum based
Should be able to give good ball park estimates for the work to be done.
E.g., give an estimate of how long it would take to develop a use case.
10. Problem Solving
Do not rush to fix a problem.
Instead analyze and research extensively before coming up with a solution.
Take an extra couple of hours to think for the long term solution.
Don't do stop-gap or patch up work.
Some times Complex problems require Simple solutions.
Follow the KISS principle
Develop trouble shootingand debug tools during your development
11. Keep Learning
Keep yourself up to date of the technologies that are out there that you use every day.
Newer versions of software
Standards, solutions etc.,
Feel free to suggest new technological options for the project.
Don't be just a do-er.
Create, Innovate and share your knowledge.
12. Java Developer
Get your hands dirty with different versions of Java (1.4, 1.5, 1.6) , Spring (2.5, 3.0) etc.,
Don't be afraid to use data structures (Lists, Maps, Sets)
Should have good understanding of DBconcepts.
Should be able to write good SQL queries.
A java developer is expected to write SQL queries to be used along with spring.
Understand DDLs, DMLs, Table, Views, Materialized Views etc.,
13. Day to day tools
Should be very good in using Eclipse IDE. Try out the various plugins available.
Be able to run Ant within eclipse, run a stand alone Java application, start/stop App/Web servers etc.,
Be proficient in Unix commands, ftp commands, shell scripts.
Most of the production environments are in Unix/Linux environment.
So you should be able to manage the file system, edit files, run scripts etc.,
14. Day to day tools
Have good experience in using FTP tools (wsftp, winscp)
Unix tools (Putty, Tera term, Terminal)
File comparison tools (Beyond Compare, Win Merge)
Image editing tools (for taking screenshots, marking on the screen shot etc., )
Source Control System (SubVersion, Clear case, AccuRev)
Also be proficient in using Word, Excel, Powerpoint etc.