Software Engineer
Job Description
Job Description Overview:
• This is a contract-to-hire position. Candidates must be eligible, open & willing to full-time placement offers.
• Would like to see a stable employment history. Would be concerned if we see job-hopping or engagement-hopping.
• Ideally, candidate would be local to the Richmond region. Current COS is not supporting relocation, but I would consider minimal assistance for the right candidate.
• We are not looking for “lead” level people – more mid-level to low level.
• So candidates who are expecting to step into a technical leadership capacity may be disappointed.
Role Summary/Purpose:
• Client is looking for an experienced Software Engineer to work on a number of exciting projects that will have a very positive impact on client’s business.
Essential Responsibilities:
• You will be responsible for programming a feature and or a small feature set.
• You will contribute to the team and works with direction from the Senior Team Members or management but works independently.
In this role you will:
• Act as a member of the Software Center of Excellence, representing the face of high quality design and development practices.
• Develop high performing, scaling and innovative end-to-end web applications.
• Collaborate with system engineers, frontend developers and software developers to implement solutions that are aligned with and extend shared platforms and solutions.
• Apply principles of SDLC and methodologies like Lean/Agile/XP, CI, Software and Product Security, Scalability, Documentation Practices, refactoring and Testing Techniques.
• Writes codes that meets standards and delivers desired functionality using the technology selected for the project.
• Build features such as web services and Queries on existing tables.
• Understand performance parameters and assess application performance.
• Work on core data structures and algorithms and implement them using language of choice.
Business Acumen:
• Have a solid understanding of the underlying infrastructure needed to run a large distributed web application.
• Has the ability to break down problems and estimate time for development tasks
• Has the ability to make basic technology choices based on experience.
• Demonstrates awareness about competitors and industry.
Leadership:
• Has the ability to take ownership of small tasks and deliver without supervision while using their discretion to seek help when necessary.
• Voices opinions and presents clear rationale.
• Uses data or factual evidence to influence
• Recognizes collaborative behaviour and participates in collaborative activities.
• Learns organization vision statement and decision making framework.
• Able to understand how team and personal goals/objectives contribute to the organization vision
Qualifications/Requirements:
• Bachelor’s Degree in Computer Science or in “STEM” Majors (Science, Technology, Engineering and Math).
• A minimum of 2 years of professional experience in software development.
Desired Characteristics:
• Experience working with Agile software development methodologies (Scrum, XP)
• Dedication to quality
• Strong problem solving abilities
• High energy, results driven person with strong interpersonal skills
• Excellent communication skills and the ability to interface with more senior co-workers and leadership with confidence and clarity
• Able to clearly articulate and document software designs
• Must be receptive to feedback and guidance.
• Comfortable working in a team and interacting with others.
Technical Expertise:
• Strong knowledge of OOD/OOP software design patterns and principles
• Strong knowledge of Java 6+ and Java open-source software components
• Experience with JUnit and writing unit tests
• Experience with multiple Spring technologies such as Spring Framework, Spring Boot, Spring Cloud, Spring Data, Spring MVC, etc.
• Comfortable working in the presentation-tier.
• HTML, CSS, JQuery, AJAX, JavaScript, AngularJS.
• Web Services experience in REST (JSON, WADL) and SOAP (JAXB, WSDL, XML)
• Knowledge of Relational Database modeling and concepts (SQL, referential integrity, etc.)
• Experience with Relational Database Management Systems such as Postgres, MySQL, SQL Server, and/or Oracle.
• Experience with Java Object-Relation Mapping (JPA, Hibernate, EclipseLink, OpenJPA).
• Experience with NoSQL databases such as MongoDB is a plus
If you are interested you can reach me at ujjwal.mane(at)collabera.com and can give me a call at
973-805-7557