Blog

Java Developer – Alpharetta

a large client of ours has an immediate opening for a Mid or Senior Level Java Developer. This is a long-term contract with the strong potential to go full-time. The current projects you would be working on themselves are slated to go multiple years.

The the primary skills that they are looking for are Java,Oracle,JAX-B,Core Spring (not MVC),Agile methodology,and Restful Webservices. This is all new development being done in this group.

If interested,please email me at mmcdill@apexsystemsinc.com.

Posted in ajug_job

Mid-Level Java Developer

A client of ours in the Midtown area has an immediate opening for a Mid-Level Java Developer. Due to the nature of this client’s business,we are only capable of submitting Green Card holder and US Citizens for this role.

This is a 6 month+ contract with a strong possibility to go full-time. Targeting candidates with 5+ years of Java development experience.

Must have experience/knowledge in:
*Java and J2EE.
*STRUTS,Tiles,JSP and JDBC.
XHTML,HTML,and HTTP protocol.
*JavaScript,JQuery,CSS.
XML,XSD.
*Object Oriented Design,Analysis and Programming.
Oracle Relational Databases and SQL.
Web application server – Tomcat or JBoss.
Windows and UNIX OS (from a user point of view).
Use of source control system like Vault,Subversion or Mercurial and working in a team development environment
Basic UML diagrams: Class,Sequence,Deployment and Use Case Diagrams.
Writing design documents,and technical documentations.
Build tools (Ant,Maven,etc…)
Integrated Development Environment (prefer Eclipse).
Use of open source products/tools
Highly motivated and able to work in a small team environment often performing other duties – such as requirement capture,testing,and deployment.
Must be able to work independently.

Experience/knowledge in the following a plus:
Spring 3 Core Framework – dependency injection
Spring 3 MVC – annotation driven
Spring 3 RESTful services
ORM/Persistence API – JPA or Hibernate
JSTL
JQuery UI or EasyUI
Workflow Engine – Activiti or jBPM
Portlet API – JSR 286
Portal development and administration – Liferay or uPortal
Java Annotations development
PHP
CMS – Drupal,Alfresco,other

Education:
Bachelor’s degree (computer science,engineering or related fields).

Posted in ajug_job

Sr. Java Developer – Full Stack

Stable but growing educational firm in the Alpharetta area is seeking an experienced and driven full stack Java Developer to join their team. This opportunity will allow you to join a smaller but highly experienced team of developers who value team collaboration and furthering education. Great opportunity for someone who wants to be a true contributor and see the real impact of your work.

Qualified candidates should have 6+ years of java experience and experience in Hibernate,Spring,Restful API,HTML5 and CSS. This role requires 50% back end and 50% front end development so candidates with a good mix of both technologies would be ideal. Any experience with AngularJS would be a HUGE plus. Will also consider candidates who have worked primarily on backend development but have some experience with front end and want to grow that skills set.

This opportunity also offers a great work/life balance,an amazing PTO and retirement plan,comprehensive benefits package and top notch office space. Need is immediate!

Posted in ajug_job

Java Developer w/ Agile/XP

A large client of ours located in the Marietta area has an immediate opening for a Senior or Lead Java Developer who ideally has not only worked within an Agile environment,but also has XP specific experience. This is initially a 6 month contract,however there is a strong chance to convert to full-time.

The primary technical skills that this manager is looking for are Core Java and HTML5. Any Webservices would also be a plus. Again though,most importantly they are looking for someone who is passionate about Agile methologies as they have recently begun switching from Waterfall to Agile.

If interested,please email me ASAP at mmcdill@apexsystemsinc.com.

Posted in ajug_job

Java Developer

Shakti Solutions is a Austin based organization and has been providing services to fortune 500 clients in cutting edge technologies for over 15 years. We have provided services to a wide range of clients in various industries including Multimedia,Communication,Healthcare,Consulting,Medicare,Medicaid,Child Support and various other departments of State and local governments.

We are currently looking to hire Mid Level dynamic JAVA Developers with 4 – 6 years of experience for our project in the United States.

Shakti strongly believes in creating a win-win situation with our employees. We are keen on hiring people who can add value to our firm over a longer term and for whom we can be a long term home to achieve their goals. Shakti Solutions provides all its employees not only Professional Growth,but an opportunity to grow personally with the organization by Promoting From Within (PFW).

Green card sponsorship available for the qualified candidates.

Posted in ajug_job

Every build is special

Since Semmle's business involves integrating with our customers' builds, I'm very sympathetic to Tim Boudreau's perspective on simple plain-jane builds that just work:
But with time and enough consulting customers, you grow a real appreciation for projects you can simply check out from version control and build.

It's always a relief when someone wants to, say, build a stock iPhone app using xbuild. It's often fine when they want to build a C program using msbuild. Third place is Maven, for a simple Java program; I say third place, because hardly anyone uses it without loading it with a bunch of plugins that fundamentally change how it works. But still, at least the overall project structure is somewhat standardized.

In my modest experience, I only really see the above for relatively small and simple projects. As "Scott" puts it in the first comment at the above link:

The idea that your build is "not as special as you think" more often false than it is true.

I just skimmed a code base I have handy, and here are some of the things I see in there that break the mold of any off-the-shelf build tool:

  • It uses parser generators, such as ANTLR.
  • It's mainly a Java code base, but there is a little bit of code in all of: C, Objective C, JavaScript, Scala, C#, and Python.
  • It uses a home-grown stack trace obfuscator and de-obfuscator that involves bytecode rewrites on the deployed jars.
  • It includes its own version of zipmerge, with options not available in the open-source version.
  • It uses the JIT support in mini-Lua to generate machine code that is then compiled into string literals in a C program.
  • It includes a proprietary query language and numerous queries in that language. Those queries get compiled during the build, using a query engine that is also compiled during the same build.
Posted in Blogroll

Every build is special

Since Semmle's business involves integrating with our customers' builds, I'm very sympathetic to Tim Boudreau's perspective on simple plain-jane builds that just work:
But with time and enough consulting customers, you grow a real appreciation for projects you can simply check out from version control and build.

It's always a relief when someone wants to, say, build a stock iPhone app using xbuild. It's often fine when they want to build a C program using msbuild. Third place is Maven, for a simple Java program; I say third place, because hardly anyone uses it without loading it with a bunch of plugins that fundamentally change how it works. But still, at least the overall project structure is somewhat standardized.

In my modest experience, I only really see the above for relatively small and simple projects. As "Scott" puts it in the first comment at the above link:

The idea that your build is "not as special as you think" more often false than it is true.

I just skimmed a code base I have handy, and here are some of the things I see in there that break the mold of any off-the-shelf build tool:

  • It uses parser generators, such as ANTLR.
  • It's mainly a Java code base, but there is a little bit of code in all of: C, Objective C, JavaScript, Scala, C#, and Python.
  • It uses a home-grown stack trace obfuscator and de-obfuscator that involves bytecode rewrites on the deployed jars.
  • It includes its own version of zipmerge, with options not available in the open-source version.
  • It uses the JIT support in mini-Lua to generate machine code that is then compiled into string literals in a C program.
  • It includes a proprietary query language and numerous queries in that language. Those queries get compiled during the build, using a query engine that is also compiled during the same build.
Posted in Blogroll

Still want to go to DevNexus 2015 (for free)? Room Volunteers Needed!

We are still looking for a few more room volunteers to help us with the monitoring and basic quality control of the breakout session rooms at DevNexus 2015 next week.

In total we need 24 volunteers (12 tracks x 2 days) for the 2 main conference days (March 11 and 12)  It will be first come, first serve - So please apply ASAP. We will be accepting room monitors from now and up until Thursday, March 5th.

The room monitor will be responsible for:

  • Getting a copy of the presentation slides from speakers right after each session
  • Making sure speakers don't go over their allotted time
  • Communication of any room related issues (power, sound , temp... etc).
  • Count the attendees in each session
  • Provide some feedback in regards to the observed sessions

A volunteer will be in charge of a single track room for one full day. Then s(he) will be free all day on the alternate conference day. For example, you monitor the Agile session room on Wednesday, then you are free to attend any session on Thursday.

Please contact info at ajug dot org if you are interested with the following info:

  • Day and Track
  • Alternative Day and Track 
  • Name
  • Email
  • Phone

Also, let us know if you have any further questions.

THANKS!

Posted in Blogroll

Still want to go to DevNexus 2015 (for free)? Room Volunteers Needed!

We are still looking for a few more room volunteers to help us with the monitoring and basic quality control of the breakout session rooms at DevNexus 2015 next week.

In total we need 24 volunteers (12 tracks x 2 days) for the 2 main conference days (March 11 and 12)  It will be first come, first serve - So please apply ASAP. We will be accepting room monitors from now and up until Thursday, March 5th.

The room monitor will be responsible for:

  • Getting a copy of the presentation slides from speakers right after each session
  • Making sure speakers don't go over their allotted time
  • Communication of any room related issues (power, sound , temp... etc).
  • Count the attendees in each session
  • Provide some feedback in regards to the observed sessions

A volunteer will be in charge of a single track room for one full day. Then s(he) will be free all day on the alternate conference day. For example, you monitor the Agile session room on Wednesday, then you are free to attend any session on Thursday.

Please contact info at ajug dot org if you are interested with the following info:

  • Day and Track
  • Alternative Day and Track 
  • Name
  • Email
  • Phone

Also, let us know if you have any further questions.

THANKS!

Posted in Blogroll

Writing a Maven Plugin Unit Test

If you are trying to write a Maven plugin with unit tests and following Apache’s Maven documentation you may end up with a dependencies like this :

 <dependencies>
        <dependency>
            <groupid>org.apache.maven</groupid>
            <artifactid>maven-plugin-api</artifactid>
            <version>3.2.5</version>
        </dependency>

        <!-- dependencies to annotations -->
        <dependency>
            <groupid>org.apache.maven.plugin-tools</groupid>
            <artifactid>maven-plugin-annotations</artifactid>
            <version>3.4</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupid>org.apache.maven.plugin-testing</groupid>
            <artifactid>maven-plugin-testing-harness</artifactid>
            <version>3.2.0</version>
            <scope>test</scope>
            <type>jar</type>
        </dependency>

    </dependencies>

Because that is what their docs say. Their docs are lies straight from the pits of hell. Your dependencies section should look like this :

<dependencies>
        <dependency>
            <groupid>org.apache.maven</groupid>
            <artifactid>maven-core</artifactid>
            <version>3.2.5</version>
        </dependency>
        <dependency>
            <groupid>org.apache.maven</groupid>
            <artifactid>maven-artifact</artifactid>
            <version>3.2.5</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupid>org.apache.maven</groupid>
            <artifactid>maven-compat</artifactid>
            <version>3.2.5</version>
        </dependency>

        <!-- dependencies to annotations -->
        <dependency>
            <groupid>org.apache.maven.plugin-tools</groupid>
            <artifactid>maven-plugin-annotations</artifactid>
            <version>3.4</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupid>org.apache.maven.plugin-testing</groupid>
            <artifactid>maven-plugin-testing-harness</artifactid>
            <version>3.3.0</version>
            <scope>test</scope>
            <type>jar</type>
        </dependency>
    </dependencies>

I discovered this after trying to debug the following stack trace

Caused by: java.lang.ClassNotFoundException: org.apache.maven.execution.MavenExecutionResult
    at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 23 more

and only finding a bug in Maven’s tracker marked closed as a duplicate. Duplicate of what? Who knows. Eventually I had to break down to the tried and true method of copying code from a project that works. A big thanks to simpligility and the APL.

Posted in Blogroll

AJUG Tweets

Follow @atlantajug on twitter.

Recent Jobs

AJUG Meetup

DevNexus 2015

March 10 – 12

Atlanta’s most exciting conference for professional software developers is back in 2015! Come discover how the industry’s best minds use the latest technologies to build solutions to business problems. Network with other Atlanta software developers, and study real life case studies in application design and development.

Our first seven conference events were tremendous successes. Skip the travel headaches, expense, and mobs of people at other conferences and join us this February to experience one of the best developer conferences, presented by your fellow developers, right in the heart of the Southeast (and in your own backyard).

This conference is an incredible value. Not only do we provide exceptional speakers and presentations but we also provide book raffles, food, a cocktail hour for networking and mingling with the speakers and much more.

Location:

Cobb Galleria Centre