• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

passed 144/155 .....the Sun fairy tale journey !

 
herve attia
Ranch Hand
Posts: 138
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Voila. My Sun Certification Java Technologies process is over now !
Let me tell you about this sweet Sun fairy tale journey
This journey started when I got laid-off (I guess like many other people)
last august 2001. It was a sunny day, a tuesday, in the Silicon Valley, and my manager
called and asked me to step by its office to take my departure package....
So, I gave back my badge and quickly decided, on the parking of the compagny with my hands full of boxes
(papers, pen, last paycheck...), to use wisely my spare time and
keep my mind busy by going through those Sun certifications.
My plan was to go on Sun Certification Enterprise Architect.
I had over +6 years experience on OOD development, +1 J2EE...
I realized I needed first to get Sun Certified Programmer(310-025) exam.
So during 3 weeks, I studied this part lay down on the beach
and succeeded last september SCPJ with a score of 86%.
Then, I started SCEA part I (310-051), I studied once again 3 weeks
and succeeded last octoberSCEA part I with a score of 80%.
Obviouly, as SCEA is only valuable with part 2&3 , I started the SCEA part 2&3 (310-061),
worked on it during 6 weeks and succeeded last december SCEA part 2&3 with a score of 99%.
I was happy and still without a job !
So, as certification is a good stuff to improve knowledge and fill the gap
in your resume. I decided to go with Sun Certified Web Component Developer(310-080).
With 8 month of experience jsp/servlet...so what a big deal huh ?!
Once again, I studied 3 weeks lay down on the beach with my friends the seagull
learning new features JSP1.2/servlet2.3 and succedeed last january SCWD with a score of 84%.
So, I was facing a dilemma ...a gap in the Sun Certification java process : Sun Certified Developer (310-027) was missing !!
Once again, I worked on it during 3 weeks :
Some details :
- I mofified Data Class , create an adapter to wrap Data class with a lock manager mechanism implemented
as per of the ReadWriteLock pattern.
- I used RMI (easier to implement, provide security manager, dynamic class loading...blablabla)
- Built simplistic Swing application (as you can see below 17/24 points
- Wrote nice Html design document with UML class diagram and deployment diagram.
and succedeed today SCDJ with a score of 144/155.
General Considerations(maximum = 58): 58
Documentation(maximum = 20): 20
GUI(maximum = 24): 17 (I don't care...swing is boring !!)
Server(maximum = 53): 49
I read many people have wait more than 4 weeks. It took me only 2weeks and half of waiting !
So, Does Certification help to find a job ?
IMHO, without being pessimistic....I do not believe it is really helpful.
Even if you have J2EE experience, fully certified from Programmer to Architect,
the job market is still tough.
Analysts said it's gonna be better june-july 2002 or maybe by the end of year.
Actually, only 2% of the job seeker find their job through the internet.
...The others are directly hired by relation...

So what I gonna do now ? Well...as I tired with certifications....actually, I'm working on a personal project which involves SOAP (Axis) Web services.
Again, analysts said 30% IT project this year will concern web-services....so be prepare

Anyway, Thank you Javaranch for all this useful saloons.
=======================================================================
To test the robutness of your lock mechanism, I wrote this stress test program to
track any deadlock !
The following program runs multiple thread (Reader and Writer).
Please modify it !! Don't send me an email saying it doesn't compile !! ;-)
===========================================

public class Main {
private DataAccess dc = null;
private FieldInfo [] description = null;

private String dbname = "db.db";
private int port = 1099;
private String host = "localhost";
private boolean trace = false;
private int mode = DataAccessFactory.LOCAL_MODE;

public Main(String args[]) throws IOException {

try {

for(int i=0;i<args.length;i++) {
if("-port".equalsIgnoreCase(args[i]))
port = Integer.parseInt(args[++i]);
else if("-trace".equalsIgnoreCase(args[i]))
trace = true;
else if("-db".equalsIgnoreCase(args[i]))
dbname = args[++i];
else if("-host".equalsIgnoreCase(args[i]))
host = args[++i];
else if("-remote".equalsIgnoreCase(args[i]))
mode = DataAccessFactory.REMOTE_MODE;
else if("-local".equalsIgnoreCase(args[i]))
mode = DataAccessFactory.LOCAL_MODE;

}

dc = DataAccessFactory.getConnection(mode, dbname, port, host, false);
description = dc.getFieldInfo();

}
catch (NumberFormatException e) {
System.err.println("Invalid port " + e.getMessage());
e.printStackTrace();
System.exit(0);
}
catch (IllegalArgumentException e) {
System.err.println("Exception Invalid command parameter " + e.getMessage());
e.printStackTrace();
}
catch (Exception e) {
System.err.println("rmiclt exception: " + e.getMessage());
e.printStackTrace();
System.exit(0);
}
}


// Writer thread.
private class Writer extends Thread {
/** This thread object id for tracing purposes. */
public final int id;
public final int record;

private Writer (int id, int record) {
this.id = id;
this.record=record;
System.out.println ("Writer Thread record " + record );
}

public void run () {
// higher priority and lower frequency to interleave reading
setPriority (getPriority () + 1);
for (int i = 0;; i++) {
try {
try { sleep (random (125, 400)); }
catch (InterruptedException ie) {}

dc.bookSeats(record, 1);

if (trace) System.out.println ("Write"+id+" record "+record);

} catch(Exception e) {
System.err.println ("Write"+id+" record "+record+ "DatabaseException "+ e.getMessage());
}
}
}
}

// Reader thread.
private class Reader extends Thread {
/** This thread object id for tracing purposes. */
public final int id;
public final int record;

private Reader (int id,int record) {
this.id = id;
this.record=record;
System.out.println ("Reader Thread record " + record );
}

public void run () {
for (; {
try {
try { sleep (random (25, 50)); }
catch (InterruptedException ie) {}


DataInfo dtinfo = dc.getRecord(record);
int nbSeats = Integer.parseInt(dtinfo.getValues()[description.length-1]);
if (trace) System.out.println ("Read"+id+" record "+record+" Set seat="+nbSeats);


} catch(Exception e) {
System.err.println ("Read"+id+" record "+record+ "DatabaseException "+ e.getMessage());
}
}
}
}

// Construct some writers and some readers and let them loose
private void main () {

for (int i = 1; i <5; i++) (new Writer (i,this.random(1,5))).start ();
for (int i = 5; i < 6; i++) (new Reader (i,this.random(1,5))).start ();


}

private java.util.Random random = new java.util.Random (0);
private int random (int low, int high) {
int tmp = Math.abs (random.nextInt ()) % (high - low) + low;
return tmp;
}



public static void main (String [] args) {

try {
(new Main (args)).main ();
}
catch(Exception e){
System.out.println("Exception : "+e.getMessage());
}

}
}
 
Mark Spritzler
ranger
Sheriff
Posts: 17278
6
IntelliJ IDE Mac Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Congrats Herve. Give a hello to the Seagulls.
Enjoy the Web Services stuff, it is pretty cool.
Mark
 
Rajesh Matti
Ranch Hand
Posts: 121
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
herve- First of all, Congrats !!!.
Also, good to know your experience. Hope you will find a job sooner or later.
Good luck,
-Rajesh
 
Mathew Sam
Ranch Hand
Posts: 124
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Congrats Herve.........
Good Luck
 
Andrew Kwong
Ranch Hand
Posts: 40
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Congratulations!
 
Enrico Mannarino
Ranch Hand
Posts: 133
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Congrats Herve,
You’ve done it all now. Be proud of yourself!
I’m really glad that you took you time to share with us your experience about the markets right now. I’m living in Europe, working as a contractor, and it’s really bad over here as well. I was lucky enough to get a new contract Monday, so for the moment I’m gonna put the certifications on a hold.
Enrico
 
Bal Sharma
Ranch Hand
Posts: 273
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Congtat! herve
-Bal
 
Terry Wang
Ranch Hand
Posts: 102
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
truly amazing journey within such a short time period. you're such a self-motivated person. i bet you'll definitely find a job soon. good luck!
 
Najib Coutya
Greenhorn
Posts: 28
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Many congratulations Herve,
Good luck in finding a job. In Britain there is still quite a demand for J2EE. For browsing try
www.jobserve.com
All the best
Najib
 
Mathew Kuruvilla
Ranch Hand
Posts: 145
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hey, hey, hey don't feel too bad. You are doing great. AND you've got company. I am posting this from Ottawa, we've got hundreds of people doing all kinds of things after having been booted out of their workplace.
Mathew
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic