Sr. Software Engineer-Data Engineering
- Expired: over a month ago. Applications are no longer accepted.
The IT Division is responsible for the development and operations of information systems for the State and Federal agencies doing business related to or using information from the administration of motor vehicles and driver licenses. The IT Division develops and operates many applications, some complex, covering all aspects of those system development lifecycles, and targeting a wide range of audiences.
The Software Engineer position has core responsibilities for the design, development, maintenance, optimization, and operational support of components which move and ingest data from sources into the analytics systems. This includes building systems for fault tolerance in a cloud environment.
The Software Engineer must be comfortable and adept at working in an agile environment. The Software Engineer will have significant interactions with members of the information system project team ultimately responsible for creation of the upstream applications. The Software Engineer will also perform some duties involving data usage, but the focus will be on data movement, transformation, and storage.
Essential Duties and Responsibilities:
- Data Engineering Design – The Software Engineer is responsible for working with the architect to design fault tolerant data movement systems with recoverability and techniques for handling system interruptions. (25%)
- Data Engineering Development – The Software Engineer is responsible for the development of the data movement and ingestion components. Previous experience with requirements, system design, software design, coding using both platform and programming language technologies (examples: SSIS, C#, Java/Scala, Python, Spark, Azure Data Factory, Azure Synapse), testing (unit, integration, system, performance, regression), reporting platforms (SSRS, Power BI) and deployment to test and production environments are essential. (50%)
- Application Tuning, Monitoring and Operational Support – The Software Engineer is responsible for the analysis of current systems and applications for aspects including performance, diagnosis, upgradeability, integration, and pro-active maintenance. (15%)
- Research and Professional Development – Responsible for conducting POCs on new products and/or solutions that would meet the needs of the data movement systems, maintain awareness of technology trends, industry standards and best practices. Provide feedback and recommendations to the manager. (10%)
College degree in computer sciences from an accredited college. Equivalent work experience may be substituted.
Knowledge, Skills and Abilities Required:
This position requires excellent Business Intelligence design and development skills with strong oral and written communication skills. The Software Engineer will possess advanced technical skills and will be responsible for designing, creating, maintaining, and operating applications that ingest data and store it to provide data access to BI systems. The individual must have 5 years of experience, with extensive experience in capturing, moving, and transforming data. Experience with doing so in an environment using Microsoft tools and databases is specifically sought. Knowledge of other programmable data handling systems is also sought. The Software Engineer must have extensive knowledge of full life cycle management with an emphasis on agile principles. Broad experience working with a wide range of managers, developers, and customers is required.
- At least five years of hands-on software development and data ingestion development experience.
- SQL Server ETL skills (Spark, Azure Data Factory, SSIS or SQL, Custom programs) in a SQL Server 2019 or later environment.
- Work with or exposure to storage services such as Azure Blob or Data Lake
- Work with event transfer systems such as Kafka or Azure EventHubs
- Non-relational data sources, such as CosmosDB or no/low SQL
- SQL skills, with T-SQL experience
- Hands-on development experience as a developer building services or data movement programs using a modern programming language such as C#, Java/Scala, Python.
- Ability to solve problems quickly and completely.
- Ability to multi-task and stay organized in a dynamic work environment.
- Strong written and verbal communication skills. Excellent interpersonal skills, with ability to interact with all members of the agile team.
- Ability to work autonomously; innate sense of initiative; self-motivated and supporting of continuous improvement; support junior team members
- Ability to adapt quickly to new technologies and changing business requirements.
Disclaimer Statement: The preceding job description has been written to reflect management’s assignment of essential functions. It does not prescribe or restrict the tasks that may be assigned.
AAMVA is an Equal Opportunity Employer—M/F/D/V
American Association of Motor
Get fresh Cloud Operations jobs daily straight to your inbox!
You Already Have an Account
We're sending an email you can use to verify and access your account.
If you know your password, you can go to the sign in page.