Verint Systems, Inc. Sr. Engineer, Software in Helena, Montana
Sr. Engineer, Software
Location US-Remote (United States)
Job ID 15200
Overview of Job Function
As a global market share leader in the high-growth customer engagement market, Verint is focusing to expand our growth as a critical part of its announced plan to create two independent public companies in February 2021. As a part of this exciting growth trajectory, Verint is looking to add additional top talent to our team.
The Sr. Software Engineer contributes to the design, development, and implementation of the Alme Cognitive Integration Platform that interfaces with various other system components to expose functionality and data through APIs. The role utilizes proficiency and highly developed skills to work on complex projects. The senior engineer possesses experience with commonly used concepts, practices, and procedures. The engineer relies on pre-established guidelines to perform the functions of the position under occasional supervision. In addition, the role utilizes current experience and judgment to plan and accomplish goals.
Principal Duties and Essential Responsibilities
Designs, implements and tests complex software applications.
Responsible for mid-level designs and contributes to high-level designs.
Leads and participates in design reviews.
Provides effective communication with geographically distributed team members.
Participates in the testing process through test review and analysis, test execution, and certification of software.
Escalates urgent issues to Engineering Management.
Provides peer advisement to other Senior Software, Software and Associate Software Engineers, through code/design reviews and peer-programming efforts.
Interacts with Business Analyst to ensure that specifications are satisfied.
Communicates design, reliability and maintenance problems to appropriate internal resources.
May function in a support role with the following additional responsibilities:
Responsible for debugging, troubleshooting and developing technical solutions in the form of software patches related to software and setup errors.
Creates workaround solutions when product procedures have failed and ensures issues are resolved in a timely fashion.
Escalates urgent problems requiring more in-depth knowledge to appropriate internal resources.
Bachelors degree in Computer Science, Software Engineering or other related degree
Minimum of 5 years experience in software development
Strong proficiency in C# programming
Experience developing/consuming REST based web services
Experience in fault-tolerant or highly available, distributed systems
Familiarity with standard concepts, practices, and procedures within software design and development
Experience in Object Oriented analysis and design
Exceptional analytical and problem-solving skills
Strong time management, written and verbal communication skills
Exceptional attention to detail
Ability to work both independently as well as in a dynamic, distributed team environment
Ability to adhere to strict delivery schedules and successfully manage multiple projects simultaneously
Successful completion of a background screening process including, but not limited to, employment verifications, criminal search, OFAC, SS Verification, as well as credit and drug screening, where applicable and in accordance with federal and local regulations
Experience in real-time or high-performance computing (primarily on Windows server platforms)
Cloud based development experience with Amazon Web Services or similar preferred
Experience with build tools such as GitLab CI/CD, Webpack, MSBuild and NPM is a plus
Working knowledge of distributed source control solutions such as Git
Ability to learn third party documentation while designing and writing code based on this documentation as a sole source of information
Experience with larger-scale software development projects
Knowledge of various Software Development Methodologies (particularly Agile) and experience in all stages of the software development lifecycle is a plus
General understanding and proven real-world design experience with operating system fundamentals (multi-processing, multi-threading, inter-process communication, disk I/O, network I/O, memory allocation, etc.)