Open Positions

— Software Development Engineer in Test— Technical Support Engineer— Engineering Manager— Software Engineer

Software Development Engineer in Test

As an experienced and technical SDET, you will work on some of Satori Software’s industry-leading offerings, including our core data services platform and new and expanding data quality platforms, as well as assist in implementing and extending automation frameworks and core infrastructure.  You will be a member of a scrum team (as well as a team of SDETs), who will ensure quality as you help expand our offerings, implement new features, create tools and infrastructure support for internal customers, and help develop processes and infrastructure to help maintain our sensational growth.  The ideal candidate has experience with automation frameworks, developing tools and automation for internal customers, agile development and testing and is looking for a position with high growth potential.  You have never worked for a company like this.

Your responsibilities will include:

  • Enhancing, designing and implementing robust tools and automation.
  • Working with team members to maintain, scale, distribute and support platforms for internal customers.
  • Assisting with assessing, testing, and deploying build and automation infrastructure improvements to support continuous-integration.

You are:

Experienced – You have experience with testing applications and Web services built on Microsoft technologies.  Experience designing, creating and maintaining test automation and are well versed in C#.

Knowledgeable – You have a great understanding of a variety of Microsoft technologies, applications, test tools and frameworks.  Git and JIRA experience is a plus.  Knowledge of Postal mailing industry is a big plus (but who has that!?).

Resourceful – You might not know everything but you know how to figure it out without spending all week doing it.

Passionate – You love to test things and break things, learn new ways to work and learn new technologies.  A love of waffles is a bonus.

Apply  Top of Page

Technical Support Engineer

Satori is looking for a technical superstar who can help our customers with our desktop products, and eventually our production mail and custom integration products. This front line support position provides technical knowledge as well as postal regulation information to our growing customer base. This fast-paced, demanding environment requires multi-tasking and an energetic, detail-oriented personality. An even disposition with great communication skills is essential, along with the ability to describe complex topics in a clear and concise manner. A computer science background is preferred, and a strong technical background is required. Must be adept at working in a team environment.

Primary Job Functions

  • Provide comprehensive end-user support for our products via phone and e-mail
  • Assist Sales with technical issues to win new accounts
  • Review and compose product bug tracking and feature request entries
  • Provide end-user training
  • Research and disseminate USPS business mailing rules and regulations
  • Research and write knowledgebase articles for both staff and our customers 
     

Minimum Requirements/Qualifications

 

  • A.A. degree in Computer Science or significant, relevant work experience
  • One year of recent experience in a software related technical support department or three years of direct customer contact experience in a technical environment
  • Strong desire to provide high-quality customer service
  • Excellent written and verbal communication and presentation skills
  • Excellent problem solving skills
  • Ability to effectively manage multiple tasks
  • Team player who demonstrates positive, constructive, interpersonal skills
  • Energetic, self-motivated and able to work productively with minimal direction
  • Demonstrated knowledge, experience and proficiency with:
  • Windows XP, Vista and/or 7
  • Microsoft Office Applications; Excel and Access in particular
  • Importing & Exporting data files
  • Understanding of and working experience with computer networking technology

Preferred Qualifications

  • Four-year Computer Science degree or deep, relevant work experience
  • Three years of recent experience in a software related technical support department or five years of direct customer contact experience in a technical environment
  • Demonstrated advanced skills with Microsoft Office Applications; Excel and Access in particular
  • Knowledge of and experience with Windows Server 2003, 2008 and 2012
  • Knowledge of and experience with relational database technology and reading/writing SQL queries
  • Coding knowledge and experience in VB/VBA/VB.net/C# or other windows-based  languages and in the use of Visual Studio a definite plus, but not required

Apply  Top of Page

Engineering Manager

The Engineering Manager is responsible for the software technical content of all products for a defined set of Scrum teams and for ensuring that this technical content aligns with Satori’s overall architecture.  The Engineering Manager is…

  • Both a strategic thinker and a pragmatist, able to see the big picture of how systems interact, with the ability to solve challenging and complex problems through efficient software architecture and coach team members on how to deliver the right increments of change to keep the products aligned with that architecture. 
  • Responsible for the technical direction and management of the engineering team members within those Scrum teams.
  • Involved in the complete life cycle of products, all the way from conception, early feature design, implementation and delivery and subsequent market-driven improvements.
  • A key figure in keeping productivity and team morale high.

Job Duties/Responsibilities

  1. Strategically decide on coding standards, tools, and platforms in order to minimize the impact of system interactions between components written in different technologies, and between components in the same product platform.
  2. Conduct technical reviews of software designs and work with other engineering teams to ensure that functional requirements are met, providing technical guidance and direction in all phases.
  3. Review requirements while they are being drafted in order to provide feedback on the technical feasibility and complexity.
  4. Evangelize the use of Scrum within the company, and support and coach engineers as they adopt and master the practices.
  5. Serve as a key escalation point for Scrum teams needing assistance in removing impediments.
  6. Partner with Senior Leadership and Product Management to assign software engineers to the right teams at the right time to maximize the value and output of those teams.
  7. Work closely with the QA Manager to ensure that the delivery of new releases is to the appropriate levels of quality, on time and within budget, in accordance with the program plan.
  8. Interface with internal and external customers on technical, project, and business issues. Coordinate reports as applicable for communications.
  9. Work in a team environment with other managers and peers to resolve conflicts, both professional and personal.
  10. Provide timely communication to senior leadership of any scheduling and scope issues related to any software development program.
  11. Set and evaluate staff performance objectives and development through regular performance feedback and evaluations.
  12. Mentor junior engineers in industry best practices, procedures, and concepts. 
  13. Ensure team members receive appropriate mentorship and professional development opportunities and training.  Provide software engineers with the training and coaching to become more ‘T-shaped’, deepening and broadening their skills.
  14. Hire or source new talent as driven by the needs of the business.
  15. Other duties may be assigned to meet business needs.

Minimum Qualifications

  1. Bachelor's degree in Computer Science or Engineering (or equivalent work experience). 
  2. Five (5) years software development, technical experience, and/or related experience.
  3. Three (3) years experience working in a Scrum or other Agile environment.
  4. Demonstrated understanding of the following concepts/tools/architectures: relational database design, configuration management, application integration, component reuse, prototyping, and use cases.
  5. Strong understanding of Scrum principles and practices such as self-organizing teams, embracing late breaking change, and the importance of transparency, inspection and adaptation to the process.
  6. Strong verbal, written, and interpersonal communication skills. Ability to write professional and technical reports and procedures. Ability to interact and communicate with individuals at all levels of the organization.
  7. Able to demonstrate direct, ''hands on'' experience from product concept through maintenance and show a thorough understanding of software development processes and methodologies.
  8. Ability to prioritize work assignments for self and group and shift work efforts based on the needs of the department or business goals.
  9. Ability to work independently and be self-motivated.  Ability to work effectively with other management and groups. Fosters a team environment.
  10. Demonstrates a high degree of personal and management professional integrity.

Preferred Qualifications

  1. Three (3) years experience managing software development teams.
  2. Scrum Master Certification.
  3. In-depth understanding of the USPS Postal Regulation as they relate to address management, and/or in-depth understanding of Data Quality solutions and technologies.

Apply  Top of Page

Software Engineer

Your Mission

Your mission (should you choose to accept it) as a software engineer working on the Monticello Team is to find ways each day to make an existing extremely powerful code base learn new tricks that will delight our customers, or at least keep them pleasantly satisfied, while at the same time, push that powerful code base towards modernization.  In this mission, you are chartered to do battle against all manner of foes including the usual villains of lousy requirements, fixed ship dates, and high monetary costs to customers if we don’t ship the right thing at the right time.  “Child’s play” you say?  To make the battle more interesting, we throw industry drama into the mix, where our primary regulatory body (the USPS) is caught between Congress, labor unions, and huge industry players, each with their own special agendas.  Who said working with a legacy code base wasn’t exciting?

About You
You are an awesome developer, and are startlingly technically deep and broad.  You are fluent in Microsoft Access, VB6, VB.NET, C++ and C#.  You likely have a bachelor’s degree or an advanced degree in Computer Science or a related field.  You’ve been working in commercial software development for at least 7 years.  Some other things you have in your toolkit:


• knowledge of design patterns
• experience with and passion for refactoring methods
• practical experience working with source code management tools and defect/work tracking tools such as Git and JIRA
• experience with database tools
• experience working in waterfall and agile environments, and a solid understanding of the benefits and drawbacks to each method

You love the challenge of taking something that someone else wrote and making it work better.  We won’t lie: this is a legacy application development role that we’re talking about, so you’re probably not interested in green-field Ruby development (at least not in your working hours).  You feel a sense of pride in the power that our software provides to customers, and are less interested in sizzle without the steak.

You are inoculated against “New Guy Syndrome”.  You know how it is.  You’re working on a product for a while, dealing with the quirks of the code that made complete sense when first implemented, but because of random twists of business rule fate, you’re having to force the software to do things it wasn’t originally architected to do.  You find yourself itching to get in and re-architect, but realize the effort to do so would be so enormous it’s not feasible to work on right now.  And then New Guy shows up to join the team, and after a few days or weeks, he (or she!) cheerfully points out how re-architecting could solve so many problems, completely oblivious to the glares coming from the rest of the engineers.  You’re not That Guy!  Instead, you seek first to work with the senior engineers to understand why design decisions were made, and use that information in future modernization efforts.

You are versatile and love variety in your day-to-day work.  Some days, you’ll be working out complex new algorithms or teasing apart where new logic needs to be surgically attached.  Other days, you might be updating an endless list of rates or listening in on an industry call to find out what the latest twist is in the ongoing soap opera “As the Postal Service Turns”.  Still other days, you’ll be traipsing through code looking for ways to optimize something that works “fine”, but could work so much better with the right refactoring sweep.  Doing the same thing day after day bores you, and you crave a constant stream of puzzles to solve.

You like people, and you find working as part of a team to be fun.  The one thing our team members all have in common is that we genuinely like working together and helping each other get the job done.  Being an awesome developer is important, yes, but it’s equally important that you also take pleasure in integrating your work into the bundle that the entire team is shipping.

You are a great communicator.  Our team members are located in the United States, but in different time zones.  All of us are comfortable communicating effectively (although not always elegantly!) via email, on conference calls and of course, in person.  The same is true of you, and you also communicate your technical ideas brilliantly in design artifacts, code comments, interpretive dance, or whatever vehicle makes the most sense to help other team members understand what you’re building.

You recognize that the mailing industry is a wacky and wonderful world.  You understand that requirements will always crystallize later than we want them to.  You have come to expect that the busiest time of year for development falls right in the middle of the December holiday season.  And you are continually entertained to see what crazy thing will fall out of the sky next as the Postal Service attempts to innovate despite the constraints imposed on it.

You like the spirit of Scrum, even if you aren’t familiar with all of the individual practices.  Self-organizing teams, continual focus on what we can do better, and frequent collaborative communication are key scrum principles.  You find value in the open communications channels as well as the transparency and impediment-squashing that the Scrum process encourages.

Still sound like fun?
Great!  We want to talk to you.  Apply now at the link below to get the conversation started.

Apply  Top of Page

© 2014 Satori Software Inc.