Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Benjamin James Northrop [email protected] www.bennorthrop.com Pittsburgh, PA 412.521.5356 (home) 412.260.7522 (cell) Summary of Qualifications 10 years experience in designing and developing software applications on over 25 different engagements, focused primarily on enterprise-scale J2EE systems and components. Proficient with concepts and techniques of OOA, OOD, AOP, Design Patterns, and agile development processes like XP and Scrum. Interested in making software not just functional, but usable; administered and coordinated usability tests on 3 different engagements. Enjoys challenges, thrives in teams, hard worker, dedicated to quality work, excellent communicator, and strong writing skills. Summary of Experience 6/07 – Pres. 2/05 – 6/07 4/04 – 1/05 6/02 – 12/03 6/01 – 4/02 1/00 – 5/01 9/97 – 12/00 5/98 – 5/99 Summa Crown Castle SDLC Partners Vocollect MSA Carnegie Mellon Univ. HCII Philosophy Straightline Source Ciber Inc. FHLB Transtar Adclip Networks Indep. Consultant IMS Inc. Senior Tech Consultant Java, JSP, Struts, EJB, Oracle Senior Java Developer Architect Java, WebWork, Spring, Hibernate, Ajax Java, EJB, Oracle, Ant, AspectJ Research Programmer Graduate Student Senior Java Developer Technical Consultant --Developer --Java Developer Developer Developer Junior Developer Java, JSP, Struts, MySQL, Swing Java, EJB, Struts, JSP MS Access, Perl Java, JSP, EJB Java, JSP, Servlets, Perl, Oracle MS Access, ASP, VB MS Access, ASP, VB Education Carnegie Mellon University Pittsburgh, PA Aug 1995 – May 1999 Bachelor of Science in Information and Decision Systems, 3.67 QPA (4.00 scale) Carnegie Mellon University Pittsburgh, PA Aug 2004 – June 2008 (expected) Masters of Science in Philosophy (Logic and Computation) Intended Thesis: “Proofs, Pictures, and Euclid – a Theorem Prover for Euclidean Geometry” Relevant Skills Java: App/Web Servers: Languages: J2EE: EJB, JSP, Servlets, JSTL, JDBC, JavaMail J2SE: AWT, RMI, Java Media Framework, JNDI Frameworks: Spring, Hibernate, Webwork, Struts, TestNG, Junit, Xerces, Log4J Tools: Ant, Maven, XDoclet Weblogic, WebSphere, Tomcat, ServletExec, Apache, IIS Perl, Javascript, Cold Fusion ML, VB Script (ASP), SQL, PL/SQL, HTML, WML, XML, XSL, XSQL, VB 5.0, VBA, C++, C, LISP, Prolog, COBOL, Lingo, CSS Databases: Operating Systems: Java IDEs: Design Tools: SCM Tools: Oracle, DB2, MySQL, Microsoft Access, SQL Server, File Maker Pro Windows (95/98/2000/NT), Unix, Linux, Free BSD, Mac OS Eclipse, IBM WSAD 4.0, IBM Visual Age, Symantec Visual Café Rational Rose, MagicDraw UML, TogetherJ Subversion, Rational Clearcase, CVS, Visual Source Safe Certifications Sun certified Programmer for the Java 2 platform Sun certified Web Component Developer Brain Bench certified Object Oriented Concepts Open Source Contributions Created PMDReports, a code quality tool which persists and aggregates statistics generated from PMD in order to view code quality metrics from a component-level view. Experience Summa (Crown Castle) Senior Java Developer Pittsburgh, PA Jun 2007 – Present Implemented new business-critical features within the proprietary J2EE-based CCIsites application to help Crown Castle better manage customer license agreements. Led the design and development of a web-based system used to manage the process of customers opting out of license agreements with Crown Castle. (Java, JSP, Struts, Oracle) Implemented key enhancements to a proprietary workflow engine, allowing Crown Castle to track license requests from customers. (Java, JSP, Struts, Oracle) SDLC (Vocollect) Senior Java Developer Pittsburgh, PA Nov 2006 – Jun 2007 Led the analysis, design, and development of the Delivery Locations feature for Vocollect’s VoiceLink 3.0 product. Utilized the dependency injection design pattern to improve testability and extensibility of business logic, and used ORM techniques to achieve portability and better maintainability of database persistence code. (Java, Spring, Hibernate, WebWork, Ajax) Managed the implementation of the reporting module, which entailed integrating a proprietary reporting component and open-source reporting frameworks with the VoiceLink 3.0 system. (Jasper Reports, Spring, Hibernate, Webwork, Ajax). Served as the lead consultant of 13, helping to coordinate tasks and manage knowledge. Helped to coordinate, administer, and analyze a usability test of the VoiceLink 3.0 product and helped to pinpoint and then eliminate over two dozen critical usability issues. Helped define the customization strategy for the VoiceLink 3.0 product. SDLC (MSA) Architect, Senior Developer Pittsburgh, PA Feb 2005 – Nov 06 Played a key role in an architecture assessment of MSA’s Gabriel product, a 5 million line ERP system for the Media industry. The assessment spanned functional, organizational, and technical domains to discover the extent to which each architectural element supported critical business goals. Implemented a performance instrumentation solution utilizing Aspect Oriented Programming to achieve better maintainability and extensibility (AspectJ, Ant). Analyzed and refactored a critical core component that was responsible for system-wide performance problems (Java Stored Procedures, PL/SQL). Acted as a mentor to junior Java developers, performing code reviews, holding consistent brown-bag learning sessions, and offering general support and assistance. Developed a tool used to visualize Ant target workflows for the purposes of understanding complex Java build scripts (Java, Ant). Researched and refactored an exception handling rules-engine (Java, EJB). Carnegie Mellon Research Programmer, Gr. Student Pittsburgh, PA Apr. 2004 – Jan. 2005 Collaborated with Information Visualization specialists from the Human Computer Interaction Institute to design an effective interface for searching and navigating large, multi-faceted, hierarchical data sets (JSP, Struts, MySQL). Implemented a web-based portal and discussion engine used in Pittsburgh’s 2004 Deliberation Day. The portal was used to host and facilitate political conversations among citizen participants toward the goal of strengthening democratic discourse (MySQL, PHP, Flash). Straightline Source Senior Java Developer Pittsburgh, PA Jun. 2002 – Dec. 2003 Created a Notification hub used by different J2EE applications to send messages to subscribers in different file formats and via different delivery channels. Implemented based on the Publish-Subscribe design pattern (JavaMail, EJB, Struts). Maintained two key business components for calculating prices of different product configurations of steel and for checking inventory availability for these products (EJB, Oracle 11i). Designed and developed a generic reporting framework which provided common functionality for displaying and manipulating read-only data, like sorting, paging, filtering, and file conversion (Struts, Custom Tags). Led the development effort for an online contract management tool used by customers to manage their own accounts. Developed utilizing core J2EE design patterns including the Business Delegate, Session Facade, Value Object, MVC, and Service Locator patterns (EJB, Struts, WebSphere, Oracle). Designed and developed a core logging and exception handling framework used by multiple application teams within Straightline (Log4J, Struts, JavaMail). Built custom extensions to the Struts framework providing common functionality for session management, resource lookup, and data caching (Struts, EJB). Ciber Inc. Consultant Pittsburgh, PA Jun. 2001 – May 2002 Implemented key business components within the EJB specification for an internet application used by Railroad operators for placing railcar orders (EJB, DB2, WebSphere, Visual Age). Built a JSP Custom Tag library used in the presentation tier to encapsalate and reuse complicated client-side logic for validation, filtering, and complex input fields (JSP Custom Tags, Javascript, HTML). Developed a wireless knowledge management application used to assist a sales team in initial-stage client meetings. Designed the architecture using a standard MVC pattern, such that core business components were reused across multiple presentation layers (JSP, JavaBeans, Servlets, Custom Tags, Tomcat, MySQL, SQL, WML). AdClip Networks Programmer New York, NY Jan. 2000 – May 2001 Led the development effort for a web-based administration system used by online publishers and advertisers to configure and deploy digital coupons (Java, JSP, Servlets, Beans, XSL, XSQL). Developed the beta version of AdClip’s first wireless product, the Wireless Wallet (Perl, WML, XML). Wrote key business functionality in both the middle and database layers for AdClip’s flagship product, the AdClip Wallet (Perl, PL/SQL, SQL, XML, Apache, Linux) Established in-house process standards centered around the philosophies of object-oriented analysis and design, communicated via the UML. Designed the table schema for a relational data warehouse used to store clickstream and ad-serving data (Oracle). Developed and maintained the data model for a transaction-oriented relational database consisting of over 100 tables (Oracle 8i). Created the database schema for a direct marketing application (MySQL). Independent Software Developer Pittsburgh, PA Oct. 1997 – Jan 2000 Designed, developed, and maintained various applications for 7 small businesses or organizations in the Pittsburgh and Boston areas, including point-of-sale, inventory management, and reporting systems. (Microsoft Access, FileMaker Pro, VB 5.0, Active Server Pages, SQL) IMS Programmer Pittsburgh, PA May 1998 – May 1999 Headed multiple projects involving database and web application development. (MS Visual Interdev, Active Server Pages, Microsoft Access, VB 5.0, SQL) Interests Soccer, mountain biking, backpacking, reading