Software Engineer, Data Acquisition

Fort Wayne, Indiana, United States

DMA

DMA's team of tax experts provides various corporate tax consulting services for companies around the world.

View all jobs at DMA

Apply now Apply later

Why are long tenures and low turnover rates the norm at DMA? When you are an employee owned company, you are all about your employees, and here is proof:

  • 2024 Great Places to Work Certified
  • Employee stock ownership program eligibility begins day one of employment. ESOP contribution is targeted at 6% of your annual compensation.
  • Company paid Paternity & Maternity Leave.
  • Generous time off plans
  • Multiple benefit plans, eligible day one of employment.
  • "Live and work like a DMA Employee-Owner”: We focus on work/life balance, mental health, and the overall wellness of our employees.

 

This position is hybrid and requires the individual to be onsite in the Fort Wayne, IN office at least 2 days per week. 

 

Position Summary 

The Software Engineer will be responsible for designing, implementing, and maintaining systems to acquire, process, and store data from diverse sources. This includes web scraping, utilizing machine learning models for data extraction, integrating data from APIs, performing ETL (Extract, Transform, Load) operations, and populating target repositories such as databases and data lakes. The role also involves maintaining and enhancing existing software solutions and contributing to the development of optimized and efficient processes.  

 

Essential Duties and Responsibilities  

  • Develop and implement scripts and tools for web scraping to collect structured and unstructured data from public websites. 
  • Design and deploy machine learning models for extracting data from scanned documents. 
  • Integrate and consume data from various API endpoints efficiently and securely. 
  • Perform ETL processing, transforming raw data into usable formats, and loading it into target repositories. 
  • Populate and manage data repositories, including SQL databases, NoSQL stores, and data lakes. 
  • Collaborate with stakeholders to understand data requirements and recommend acquisition and processing strategies. 
  • Participate in code reviews and release & sprint planning sessions. 
  • Produce clean, well-designed, testable, and efficient source code. 
  • Develop unit test cases for new features and bug fixes. 
  • Diagnose and triage issues with software; determine and document root cause. 
  • Maintain and enhance existing software solutions. 
  • Provide technical support as needed. 
  • Establish estimates/timelines for development tasks and technical solutions. 
  • Assist in collecting and documenting technical requirements and potential solutions. 
  • Contribute to both high-level and low-level design documentation. 

 

Non-Essential Duties and Responsibilities 

  • Perform other duties as assigned 

 

Education and Qualifications 

  • Bachelor’s degree in Computer Science, Computer Technology, or a related field preferred. 
  • 2-4 years of professional programming experience, including data acquisition and processing technologies. 
  • Proficiency in Python, JavaScript, or similar programming languages commonly used in data acquisition, ETL, and data management. 
  • Experience with libraries and frameworks for web scraping (e.g., Beautiful Soup, Scrapy, Selenium). 
  • Proficiency in ETL processes and tools for transforming and loading data into target repositories. 
  • Familiarity with relational databases (e.g., SQL Server, PostgreSQL) and NoSQL technologies (e.g., MongoDB, DynamoDB). 
  • Understanding of RESTful APIs and experience integrating with third-party services. 
  • Experience with machine learning frameworks (e.g., TensorFlow, PyTorch) and OCR tools (e.g., Azure Document Intelligence, Tesseract, Amazon Textract). 
  • Knowledge of data storage solutions, including data lakes and cloud-based storage systems (e.g., AWS S3, Azure Blob Storage). 
  • Experience with version control systems like Git for code management, collaboration, and deployment workflows. 
  • Understanding of system development life cycles, distributed systems, and dynamic, web-based technologies. 
  • Strong problem-solving skills and ability to handle multiple issues simultaneously. 
  • Excellent verbal and written communication skills, with an emphasis on collaboration and teamwork. 
  • Must be authorized to work in the U.S. without the need for employment-based visa sponsorship now or in the future. This position does not qualify for employment-based sponsorship. 

 

 

 

#LI-JS1

#LI-HYBRID

 

Apply now Apply later

* Salary range is an estimate based on our AI, ML, Data Science Salary Index 💰

Job stats:  0  0  0
Category: Engineering Jobs

Tags: Amazon Textract APIs AWS Azure Computer Science Data management Distributed Systems DynamoDB ETL Git JavaScript Machine Learning ML models MongoDB NoSQL OCR PostgreSQL Python PyTorch RDBMS Selenium SQL TensorFlow Unstructured data

Perks/benefits: Career development Equity / stock options

Region: North America
Country: United States

More jobs like this