Sr. Software Engineer - MerchandisingSave-A-Lot

  • Not-remote
  • Total comp
    Expected total yearly pay with bonus and equity at target, including any base pay.
  • Salary
  • Saint Ann, MO

Job Summary



Purpose


This Senior Software Engineer will build next generation solutions to support the Save A Lot business. The ideal candidate is an experienced software developer with building scalable solutions. They must have strong, firsthand technical expertise in a variety of configuration management and programming languages. As an expert in software engineering, undertakes complex projects requiring additional specialized technical knowledge. Makes well-thought-out decisions on complex or ambiguous systems software engineering issues. Handles conflicting direction and resolves conflict to proceed. Ensures that system improvements are successfully implemented and monitored to increase efficiency. Makes complex modifications to existing software to fit specialized needs and configurations. Establishes and communicates common goal and direction for team. Acts as a source of direction, training and guidance for less experienced staff. Monitors project schedules and costs. Plans, conducts and supervises assignments. Reviews progress and evaluates results. Recommends changes in procedures. Reviews progress with management. Operates with substantial latitude for un-reviewed action or decision. They must be at ease working in an agile environment with little supervision. This person should embody a passion for continuous improvement and test-driven development.


Responsibilities


Possesses and apply comprehensive knowledge of particular field of specialization to the completion of complex assignments. May cross fields

Develops accurate task definition, estimates, and task schedules for own assignments


Responsible for daily communications to management and internal organizations regarding status of all assigned tasks


Complies with established processes, tools and expectations


Lead analysis and development of technical solutions to resolve problems and involves and guides other team members in problem solving activities


Maintain excellent business communication with Analysts, Business Owners and Technical Staff. Provides analysts, management and business owners/users with status reports, problem logs (issue logs) and service request status on all tasks in the work group. Oversee time spent by others in the work group


Participates with Business Systems Analysts in the business design (requirements definition) and technical design (external design) of end-user applications systems


Work alongside other engineers on the team to elevate technology and consistently apply best practices


Evaluate alternative approaches in design of application systems, including assessment of risks and benefits associated with each alternative


Plan, conduct and supervise others in the development of specifications, coding of new programs, physical design of data records, data files, and databases, creating new data structures, creating new job streams, and modify existing programs, data structures, and job streams


Participate in the implementation of new systems including the integration of the new system


Participates in coding of new programs, creating new data structures, physical data record/file design, creating new job streams, and modifying existing programs, data structures, and job streams


All work is produced in accordance with established procedures, following departmental standards, guidelines and system development methodologies on all assigned tasks


Plan, conduct and supervises others in the development of test cases and test plans, create the unit and system test environments, and conduct unit and system tests for new or modified programs and job streams


Submits program and design work for review by technical and user staff and participates in the review of program and design work of others


Reviews and validates the application of sound programming and design techniques


Verify installed systems to ensure that they adequately meet user requirements





Ensures and assists with the development of test cases and test plans and testing

Test software development methodology in an agile environment


Prepares and maintains program and system documentation using established department standards and methodologies


Oversee preparation and maintenance of program and system documentation using established department artifact standards and methodologies


Mentors junior associates in proper documentation techniques


Responsible for preparation and maintenance of problem logs (issue logs) and communicates log status to analysts or users


Assists with complex resolution of day-to-day problems within the business segment; involves and guides other team members in problem solving efforts


Provide recommendations for continuous improvement


Mentor and cross-train team members


Stays abreast of emerging technologies and trends in software development industry


About You

Bachelor’s degree in Computer Science or a related discipline preferred

Preferred 3 years relevant work experience


Excellent written and verbal communication skills, strong customer focus, good interpersonal skills and demonstrated ability to work in geographically dispersed teams


Ability to manage competing priorities


Must have strong computer skills and be proficient in use of Microsoft Office applications


Experienced in front-end technology and frameworks such as HTML, Vue.js, Knockout, ag-Grid, CSS, JavaScript, AngularJS, ReactJS, .net, and JQuery


Experienced in designing and implementing RESTful web services


Has expertise in a variety of languages, tools and utilities. Must be a true expert in JAVA and can teach classes in the subject. Must have Subject Matter Depth & Breadth in at least one other language, having used it extensively and can mentor others


Has solid knowledge of at least one DBMS, having used it extensively and can mentor others


Experience leading a team of technical professionals on multiple assignments of significant complexity, including task definitions and estimates, coordinating tasks to meet deadlines and work independently with minimal supervision


Possesses expert knowledge of program and system design, analysis, coding, testing and documentation. Solid knowledge of requirements definition


Fully proficient in all phases of the company’s Software Development Life Cycle (SDLC) methodology. Ensures compliance with SDLC Leads


Has good working knowledge of DBMS as appropriate


Completes assignments with at least medium visibility and complexity with solid quality


Possesses solid knowledge of program design, coding, testing and documentation




Physical Requirements

Ability to travel up to ~10% of the time, which may include weekends and evenings, as needed

Most work is performed in a temperature-controlled environment


Incumbent may sit for long periods of time at a desk or computer terminal


Incumbent may use calculators, keyboards, telephone and other office equipment in the course of a normal workday


Stooping, bending, twisting and reaching may be required in completion of job duties


Valar Atomics
NRB
Maddox Transformers
Patriot Mobile
University of Dallas
MxM News
Patmos
Bahnsen Group