Needed: Software Architect for Performance Lab
LOCATION: Kansas City, MO USA
I work as a contractor here at the USDA and we are looking for someone to run our Application Availability and Performance Lab (AAPL) team. We have two positions at the highest level of the team. The team provides performance monitoring, tuning and general systems and software consultation to the Farm Services Agency of the USDA. There is a lot of scenario recreation and performance verification that goes on. We are looking for a Technical Lead for the team and also a peer to the Technical Lead who is similarly excellent but wouldn't hold any managerial/advocacy roles for the team. The pay is expected to be between exceptionally high. We may be able to cover as much as $200K for the right candidate. The right candidate could stay for as much as 3 years or longer (if desired) and could have several other opportunities open up in the organization for the longer term. 1099's are possible but compensation/benefits may be higher for a W2.
We are a Java/J2EE shop using Struts and other open source web development tools and technologies. We use JBoss and WebSphere servers. Our group provides consultation to the federal employees that oversee the architecting of software for farm related web applications. Experts in Java/J2EE, maven, performance tuning and testing, database tuning and testing, software configuration and deployment and a variety of related technologies would be potentially acceptable, but the expectations on your expertise will be high and we will verify your skills.
I'm currently holding the tech lead position on the team and am looking for better people than me to fill the roles. So far applicants have not been impressive enough to fill these positions.
Please send me your resume if you are interested.
robert.waldrop AT kcc.usda.org
To give you a better idea of things, below is a detailed description put together by some folks in our building.
The below will give you a context. If you do not match the below description but are certain that everyone you work with considers you to be the technology expert at an aspect of the below (let's say you were an original contributor to Maven or Postgresql or a really important Java testing package or Struts or a Spring component) then please don't rule yourself out. Similarly if you are currently a contributor to an open source project and do not want to leave that, there may be flexibility for you to help with both.
Our primary goal is to find a superior person with excellent experiences. Not to perfectly match a job description.
Performance and Availability Architects (Architect I, Architect II)
Has project management skills, including prioritization, measuring progress
Architect I - has experience participating in an availability and performance team (J2EE environment preferred)
Architect II - has experience leading an availability and performance team (J2EE environment preferred)
Ability to guide the vision of the performance and availability team, and the ability to communicate this vision to the organization and senior management
Ability to communication accomplishments to senior management
Proven track record in taking all tasks to completion
Brings unique performance and availability specialization in one of the following areas: SQL/DBA, J2EE Application Server, Networking, J2EE Application Development
Excellent oral and written communication skills (to development teams, upper management)
Ability to identify and resolve problems that the development teams could not find or solve on their own
Ability to identify the most important variables when setting up the test environment to ensure that test results translate to production improvements
Expert-level mentoring skills, including ability to communicate performance and availability issues to developers, and enable developers to resolve those issues
Ability to work as a team with other senior architects, developers and project managers
Hands-on experience developing J2EE applications
Expertise with Persistence Layers - data modeling, DAO technology (e.g., logical vs. physical data models, SQL, stored procedures, JDBC, Hibernate, spring-jdbc)
Development Experience Web Services standards and implementation
Experience with web frameworks (JSP, Struts)
Experience with automated testing and coverage reports (e.g. JUnit, Cactus, Emma, JCoverage, Cobertura, etc.)
Experience with industry standard build tools (e.g. Ant, Maven, etc.)
Hands-on Experience with a spectrum of J2EE technologies such as EJB, MDB, JMS, JDBC, JPA, JTA, JNDI, Logging, Security, Threading
Experience with software methodologies (e.g. Rational Unified Process (RUP), Agile, etc.)
UML notation and modeling experience (Use Cases, Object models, sequence diagrams, etc.)
Experience with Object Oriented Analysis and Design (experience must include: methodology, layered application design, etc.)
Design patterns experience (e.g., Gang of Four Design Patterns)
MVC architecture application implementation experience (related to the business controller and business model layers)