Sr. Software Engineer
About the role
This position designs, develops, tests and maintains software product applications. It serves as a technical expert on development projects, drives the full development life cycle including requirements analysis and design, writes technical specifications based on conceptual design and stated business requirements, supports, maintains, and documents software functionality, identifies and evaluates new technologies for implementation, analyzes code to find causes of errors and revise programs as needed, drives software design meetings, and analyzes user needs to determine technical requirements.
Responsibilities
- Design, develop, document, test, and debug new and existing software systems and applications.
- Serve as technical expert on development projects.
- Drive 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 users to prototype, refine, test, and debug programs to meet needs.
Requirements
Candidates must independently possess the eligibility to work in the United States for any employer at the date of hire. This position is ineligible for employment Visa sponsorship.
Desired Skills
- Automation: Unix/Linux command line programs, creating/editing scripts, analyzing results of automated deployment scripts, making modifications.
- Design: Detail design documents from requirements, familiarity with Reporting tools like Crystal Reports, Jasper Reports, BIRT, etc., general understanding of software environments and network topologies, OOA/OOD skills, demonstrable understanding of distributed, component-based architecture, working knowledge of networking and/or telecommunications protocols, solid understanding of event-driven/asynchronous programming and multi-threading, demonstrable technical design skills (UML experience a plus).
- Coding: 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, solid understanding of event-driven/asynchronous programming and multi-threading, working knowledge of networking and/or telecommunications protocols, experience/designing mobile applications.
- 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: Maintains test scripts as needed, prepares test strategy, test plan, test cases, and test summary documents, experience with automated functional software testing frameworks, performs unit, functional, load, user interface, performance, regression and system integration testing on new code or modified code prior to production releases, produces and reports project test metrics, assists new staff on testing techniques and test methodologies.
- Support: Responds to situations in a timely manner, meets predetermined deadlines, responds to customer support requests, supports/maintains existing products and adds new features as requested by customers, central point of contact for support of UAT/production applications as needed, keen troubleshooting skills across tiers/domains, works on multiple projects.
Education and experience
The above job description is not intended to be an all-inclusive list of duties and standards of the position. Incumbents will follow instructions and perform other related duties as assigned by their supervisor. The Base Pay Scale For This Position In Phoenix, AZ/Chicago, IL in USD per year is: $118,000 - $152,000. San Francisco, CA in USD per year is: $142,000 - $183,000. Additionally, candidates are eligible for a discretionary incentive plan and benefits. This pay scale is subject to change and is not necessarily reflective of actual compensation that may be earned, nor a promise of any specific pay for any specific candidate, which is always dependent on legitimate factors considered at the time of job offer. Early Warning Services takes into consideration a variety of factors when determining a competitive salary offer, including, but not limited to, the job scope, market rates and geographic location of a position, candidate's education, experience, training, and specialized skills or certification(s) in relation to the job requirements and compared with internal equity (peers).