Prod Dev Eng III - Senior Software Engineer - Data at DAT Solutions
Senior Software Engineer, Data
A Senior Software Engineer at DAT is responsible for designing and building data solutions that drive the freight matching business for our external customers. In this role, you will work with our team of data scientists and data visualization experts using cutting edge tools to develop products that are reliable, scalable, and sustainable. You’ll make use of DAT’s lifeblood, which is the data from our industry dominant network of brokers and carriers. You’ll work full-stack, building back end Big Data solutions in AWS, taking advanced predictive analytics models from experiment to full-scale production, and creating compelling interactive web-scale data visualizations.
- Work across the stack from raw data to customer insights
- Leverage AWS to deliver efficient, cloud-native solutions
- Create and maintain optimal data pipelines
- Assemble large, complex data sets that meet functional / non-functional external customer requirements
- Identify, design, and implement internal process improvements: automating manual processes, optimizing data delivery, re-designing infrastructure for greater scalability, etc.
- Build the infrastructure required for optimal extraction, transformation, and loading of data from a wide variety of data sources using SQL, third party API’s, and AWS ‘big data’ technologies.
- Build analytics tools that utilize the data pipeline to provide actionable insights for our customers into the freight industry.
- Work with stakeholders including the Executive, Product, Data and Design teams to assist with data-related technical issues and support their data infrastructure needs.
- Keep our data separated and secure across national boundaries through multiple data centers and AWS regions.
- Create data tools for analytics and data scientist team members that assist them in building and optimizing our product into an innovative industry leader.
- Work with data and analytics experts to strive for greater functionality in our data systems.
- Document software designs and project tasks
- Review functional requirements and analyze their impact on schedule and software design
- Provide technical leadership, mentoring and direction to other team members
- Participate in design/code reviews
- Advanced working SQL knowledge and experience working with relational databases, query authoring (SQL) as well as working familiarity with a variety of databases.
- Experience building and optimizing ‘big data’ data pipelines, architectures and data sets.
- Experience performing root cause analysis on internal and external data and processes to answer specific business questions and identify opportunities for improvement.
- Strong analytic skills related to working with unstructured datasets.
- Build processes supporting data transformation, data structures, metadata, dependency and workload management.
- A successful history of manipulating, processing and extracting value from large disconnected datasets.
- Working knowledge of message queuing, stream processing, and highly scalable ‘big data’ data stores.
- Experience supporting and working with cross-functional teams in a dynamic environment.
- Experience with supporting data science teams using Python and R data science tools
- We are looking for a candidate with 5+ years of experience in a Data Engineer role, who has attained a Graduate degree in Computer Science, Statistics, Informatics, Information Systems or another quantitative field. They should also have experience using the following software/tools:
- Experience with big data tools: Hadoop, Spark, Kafka, etc.
- Experience with relational SQL and NoSQL databases, such as Postgres and Cassandra.
- Experience with data pipeline and workflow management tools: Azkaban, Luigi, Airflow, etc.
- Experience with AWS cloud services: EC2, EMR, RDS, Redshift or similar cloud technologies such as Azure or Google Cloud
- Experience with containerization and clustering technologies such as Docker and Kubernetes
- Experience with stream-processing systems: Storm, Spark-Streaming, etc.
- Experience with object-oriented/object function scripting languages: Python, Java, C++, Scala, etc