Software EngineerApply Location Atlanta, Georgia Requisition Number R-56650
At Assurant, employees are the heart and soul of our company. Our work environment fosters teamwork and collaboration. We provide ways to make meaningful contributions, learn and develop professionally. We encourage creativity and innovation. The more our employees succeed, the better we are able to serve our customers.
As a Fortune 500 company and a member of the S&P 500, Assurant's businesses offer a variety of products and services that provide opportunity and peace of mind -- but it is our people that set us apart. By listening to what our clients want and truly understanding what they need, Assurant employees develop innovative, customized solutions to help our customers meet their goals and protect them from unforeseen risks.
By working at one of our offices, you will be part of a thriving organization that offers a wealth of opportunity for career growth. We have established a tradition of encouraging employees to focus on their own professional development. Our fundamental belief is that when people have the opportunity to thrive and grow, we all benefit – the person, the business and our customers. If you are interested in discovering all the possibilities Assurant has to offer, then we can bring out the best in you.
The Software Engineer analyzes requirements and designs, codes, tests, installs and maintains application systems, programs, functions, services and other related software components in response to enterprise needs of moderate to high complexity.
Oh, and one more thing: PASSION. You have to LOVE what you do because this is a team of driven and talented SW Engineers with a passion to create great software.
Analyze requirements and design solutions for approved projects and change requests of moderate to high complexity and risk. (10%)
- Gather, organize and document data and requirements from various stakeholders and constituencies according to given direction and standards
- Participate in design consultations with hardware and software technicians
- Develop, document and present design solutions and supporting rationale
- Prepare and obtain approval of estimates of work effort and duration for assigned tasks
- Participate in the preparation of product vision and project documentation
Design/develop system, application and program code according to business and technical requirements. (30%)
- Identify and recommend software and infrastructure components required to implement technical solutions
- Identify and recommend solution objects, functions, interfaces, dependencies, and integration points
- Prepare design documentation; submit for design review
- Convert basic specifications into equivalent infrastructure and application software structures
- Code and unit test independently or as part of a development team
- Submit software products for review of compliance with best practices, standards and enterprise architecture (code review)
Participate in quality assurance and testing to achieve quality objectives. (20%)
- Review established quality requirements and measurement metrics
- Participate in quality assurance and testing activities according to planned schedules
- Learn, use and gain experience with testing tools and techniques
- Perform technical support activities required for execution of test plans
- Perform root cause analysis and defect correction as indicated by test results
- Evaluate outcomes, report results and document findings according to current standards
Implement solutions. (10%)
- Adhere to Assurant change management requirements for application and system implementations
- Analyze conditions, consult with experienced personnel and propose strategies that minimize implementation risk and/or improve system reliability and performance
- Prepare change and Help Desk documentation according to implementation requirements
- Provide for disaster recovery and back-out mechanisms as directed
- Perform software implementation activities as directed and according to current standards and policies
- Monitor implementations and respond appropriately and as directed in the event of disruptive impacts
Provide system support. (20%)
- Learn and enhance knowledge of the various multi-platform system support environments, utilities and procedures
- Participate in on-call rotations
- Provide timely, concise communication of incident status to appropriate personnel
- Document incident occurrence and resolution(s) applied using designated repositories
- Consult with staff personnel as required for effective incident resolution
- Resolve development and support issues of moderate to high complexity or risk
Maintain and enhance knowledge of the business operations and strategic imperatives of Assurant. (10%)
- Periodically review business goals and operational and strategic objectives
- Learn the key components and relationships of Assurant products, distribution channels, and customer base
- Create and sustain open communication with business application users and stakeholders
- Adhere to the Assurant Core Principles; pursue achievement of excellence in Core Competencies
- Know the critical success factors supporting the Assurant Core Purpose, Mission, Goals and Strategy
- Knowledge client/server and n-tier development principles including Object Oriented modeling, analysis, design and programming
- Knowledge of development concepts for Windows and Web-based Services
- Knowledge of design methodologies and techniques or the Unified Modeling Language (UML) and other tools supporting Object Oriented Analysis and Design (OOAD)
- Experience with major object oriented development languages and their related utilities and/or experience with major distributed technologies and relational database technologies
- Effective oral and written communication skills
- Estimation skills for cost, effort and duration of product deliverables of moderate to high complexity
- Analysis skills for technical problems and solutions of moderate to high risk
- Established programming skills in targeted languages and utilities for distributed environments
- Internally driven to experiment and learn
- Strong passion for technology
Technical – Educational – Certification Requirements:
- Level of knowledge ordinarily acquired through one or both of the following:
- Completion of Bachelors degree in CIS, MIS, etc. and/or
- 3+ years of increasingly responsible professional experience in related field.
- Knowledge of quality assurance and testing procedures, processes and techniques employed across platforms and environments in areas of technical specialties
- Knowledge of structured program design and object oriented principle
- Knowledge of advanced topics in cloud computing such as containerization, Microservice based architectures, Azure hosting and patterns for hyper scale computing.
Recently Viewed Jobs
You do not have any recently viewed jobs
Meet Our People
Ignacio D. - Senior Operations Analyst
Whether I'm working with people in Argentina or Chile or Miami, we all feel like we're part of the same company. And within my own group, we share ideas and analyze as a team - and drive for change, for improvements. We'll show each other how we do things and lend advice.
I also enjoy the focus on work-life balance - in the workplace, we're offered exercise classes or stretching classes with a trainer, for example. I've had the flexibility to take classes and training. And, we have the opportunity to give back to the community through events held throughout the year.