Back to Search Results


Sr. Software Engineer - Java 17048 Scottsdale, AZ 5/19/2023 11:23:00 AM

Application Development
Contractor - W2

Job Description

Sr. Software Engineer - Java
 
*Applicants must be authorized to work for any employer in the United States. We are unable to sponsor an employment Visa for this position.

The ideal candidate will have a combination of Enterprise-level Java Spring Boot web service programming experience, along with understanding of streaming data technologies such as Kafka, Streamsets, or Kinesis.

This is a hybrid role.  2 days onsite / 3 days remote
 
Overall Purpose
This position designs, develops, tests and maintains software product applications.
Essential Functions
  • Design, develop, document, test, and debug new and existing software systems and applications.
  • Serve as technical expert on development projects.
  • Drives full development life cycle including requirements analysis and design.
  • Write technical specifications based on conceptual design and stated business requirements.
  • Support, maintain, and document software functionality.
  • Identify and evaluate new technologies for implementation.
  • Analyze code to find causes of errors and revise programs as needed.
  • Drive software design meetings and analyze user needs to determine technical requirements.
  • Consult with end user to prototype, refine, test, and debug programs to meet needs.
  • Complies with all security policies and procedures, to ensure that the highest level of system and data confidentiality, integrity and availability is maintained.
Desired Skills
Automation
  • Ability to use Unix/Linux command line programs and create/edit scripts.
  • Able to analyze results of automated deployment scripts and makes modifications.
Design
  • Able to prepare detail design documents from requirements.
  • Familiar with Reporting tools such as Crystal Reports, Jasper Reports, BIRT, etc.
  • General understanding of software environments and network topologies.
  • Able to demonstrate OOA/OOD skills.
  • Demonstrable understanding of distributed, component based architecture
  • Working knowledge of networking and/or telecommunications protocols
  • A solid understanding of event driven / asynchronous programming and multi-threading
  • Demonstrable technical design skills (UML experience a plus)
  • Familiar with TDD/BDD.
  • Familiar with SOA framework, web services, etc.
Coding
  • Common Developer Skills
                    - Competent (5+ years) Java or C# or C++ or Objective-C language programming skills.
                    - Competent with SQL or PL/SQL and relational database concepts.
                    - Experience with source code control systems.
                    - Experience with secure programming techniques is highly desirable
                    - Able to perform code reviews to ensure the code meets the acceptance criteria.
  • Mobile Developer
                   - 5+ years of experience in projects using Java, C++, Objective-C, or Swift
                   - 2+ years design, implementation and unit testing of mobile applications
                   - A solid understanding of event driven / asynchronous programming and multi-threading
                   - Working knowledge of networking and/or telecommunications protocols
                   - Experience/High comfort level with application layer technologies/protocols including HTTP, XML
  • Web Developer
                   - 5+ years of experience with application layer technologies including HTML/CSS, XML, JavaScript, JSON, and REST
                   - 3+ years of experience with web and application servers such as IIS, Apache HTTP/Tomcat, IBM Websphere, Oracle WebLogic, JBoss, GlassFish, etc.
                   - Experience with other computer languages like C#, Ruby, Python, and PHP is a plus
Testing
  • Able to maintain test scripts as needed.
  • Prepares test strategy, test plan, test cases, and test summary documents.
  • Experience with automated functional software testing frameworks, such as Cucumber, Selenium, etc.
  • Performs unit, functional, load, user interface, performance, regression and system integration testing on new code or modified code prior to production releases.
  • Produce and report project test metrics.
  • Possess advanced knowledge of QA/QC techniques; certifications preferred
  • Assists new staff on testing techniques and test methodologies
Support
  • Responsible for responding to situations in a timely manner, and meeting predetermined deadlines
  • Ability to support/maintain existing products and add new features as requested by customers.
  • Central point of contact for support of UAT/production applications as needed
  • Keen troubleshooting skills across tiers/domains
  • Ability to work on multiple projects
Collaboration
  • Agile/Lean methodologies experience
  • Solid understanding of an iterative software development process
  • Able to guide the team to produce estimates for all project activities and tasks.
  • Responsible for eliciting user and functional requirements and ensuring they consistent and complete
  • Mentor and monitor Software Engineers in the technical aspects of their assignments.
Experience
  • Education and experience typically obtained through completion of a Bachelor's Degree in Computer Science and/or 5 or more years of related industry experience.

Job Requirements

The ideal candidate will have a combination of Enterprise-level Java Spring Boot web service programming experience, along with understanding of streaming data technologies such as Kafka, Streamsets, or Kinesis.