Appian Flashcards
What do you know about Appian?
-Appian is a recognized global leader in multiple enterprise technology markets such as intelligent business process management systems (iBPMS), dynamic case management (DCM), digital process automation (DPA), and low-code development.
- Mission: We’re here to SIMPLIFY what it takes to turn GREAT IDEAS into POWERFUL business applications that deliver significant VALUE.
- -Simplify great ideas into powerful value
- Guarantee: Idea to App FASTER
- The company is always evolving by releasing new versions of the platform, aiming from low code to no code all while hosting hackathons and having studies conducted on low code development
- One platform.
- Low-Code Development
- -Saves time and money by building and deploying business apps fast
- -Idea to innovation in three steps
- -Deploy immediately and anywhere as soon as design is complete
- -Fast integration with pre-built connectors and easy-to-configure APIs
- -Automatically mobile on any device, natively with no extra time, effort, or resources
- -It’s powerful by allowing automation of complex processes, analysis of events, security, and scalablility
- -Easy with visual development tools and intuitive apps
Tell me about yourself
- When I’m working, I’m an analyst that uses technical skills to deliver value to clients. I learn many technologies and tools to get the job done. Few examples include utilizing Python for coding, Linux for troubleshooting servers, and Amazon Web Services for migrating infrastructure to the cloud. I’ve coordinated with different teams from both the client side and internal side to prepare for and run deployments.
- When I’m not working, I’m learning new things to better my career. For example, I obtained certifications in Amazon Web Services. I’m a property manager on the side which provides an opportunity for more client-direct work. I dance urban choreography as a creative outlet. In order to bring the energy I need to these different facets of my life, I stay healthy by running and strength training.
Tell me about your work history
- Worked at Accenture since Winter of 2015 until present
- -Hired as a software engineering associate. Currently a system developer analyst
- USPTO Summer of 2014
- -Extern
- -I analyzed patent applications, conducted research, and drafted decisions to accept or reject those applications based on that research
Why are you leaving Accenture?
- I’ve decided that my current work role is not the direction I want to go in my career.
- I am interested in a new challenge and an opportunity to use my technical skills and experience in a different capacity than I have in the past.
- Though Accenture has opportunities for growth, it’s difficult to change career tracks.
Why Appian?
- I’m attracted to the Appian’s mission of simplifying great ideas to deliver powerful value. I want to contribute to that kind of impact that Appian makes as another global leader.
- I noticed that Appian is always evolving and I feel aligned with Appian in that way. I seek to better myself inside and outside my career to better my career.
Why this position?
- I seek to leverage my technical skills, my aptitude to learn new technologies, and my communication skills in a new and challenging but still closely tied role.
- I want to utilize the client-direct skills I’ve developed outside of the office for my career, and continue to both lead and serve a team
- I’m excited to deliver value to clients of another global leader
What are you looking for in terms of career development?
- My career development has had me dipping my feet in a lot of different areas and exposing me to different technologies. I want to continue that trend while becoming a top notch consultant.
- On top of that, I want to build up my leadership skills, so that in the long term I can be in a position to effectively build up the people around me. I’m an executive board member of my dance crew and I’m experiencing first hand the rewards of helping members succeed in their passion of dance. I want to deliver that to working professionals in my field.
Why should we hire you?
- I bring with me the diverse experience in a variety of technical roles and the hunger to grow, which I’ve demonstrated in each new role I worked. I learn fast, have been a team player on several teams, and I’m eager to contribute wherever I can.
- Let me elaborate on my strengths.
Greatest strengths?
- I have a strong passion to learn. With each new assignment in my work, I had to learn new and unfamiliar technologies. For my current assignment, I had to learn about cloud computing and Amazon Web Services. I went beyond learning from the day to day at my office by studying to get certified as an AWS Developer Associate and an AWS Solution Architect. Not only was it an investment in me, but it was also an investment to deliver value to our client.
- I’m detailed oriented. Every time I’ve checked my work whether it was confirming a web element in my script, sending out an email, or entering data into a spreadsheet, I’ve done what seems to be countless double-takes. I remember this being particularly handy while being on my current cloud migration team. As part of the migration, we were tasked with building several servers in accordance to the quantities and specifications of blueprint spreadsheet. Long after the servers for an environment was built, we decided to update the blueprint with new specifications, which would mean we’d have to rebuild the servers. I noticed that my teammates didn’t build the correct quantity of servers in the first place, brought it up to my team, built new servers, and saved us from any future flack from the client.
Greatest weakness?
I used to like working on one task to its completion before starting on another, but I’ve learned to work on many projects at the same time, especially when I can batch overlapping tasks. I think it allows me to be more effective in each one. For example, on my current assignment, I was tasked with validating the infrastructure that we built in two different ways. That meant logging into each server from different environments and executing Linux commands to confirm the information inside each server. I was tasked to do this for 2 environments each with 39 servers. Instead of logging into each server and executing one set of commands and then wait to repeat for the second set of commands, I logged into 78 servers at the same time, batched the commands to be executed in series, and copy pasted across all 78. What would’ve taken me 2 days took me 4 hours.
Tell me about a time when you stepped up
- On a previous assignment, I was on a team that was in charge of managing code environments for a website. That meant we would turn on, shut down, and restart applications on several servers when needed, monitor these servers for issues, and when alerted to issues, we’d escalate. Naturally we coordinated with several teams on code deployments, troubleshooting issues, and code fixes.
- There was a side project that my senior colleague wanted someone to volunteer to complete. It was to basically identify why this job that used to run hourly no longer ran for almost a year, fix it, and deploy it. The job would ping certain servers to check their status and health and it would be scheduled by Tivoli Workload Scheduler (an application that schedules and runs batch jobs) to run.
- Eager to do something different from coordinating deployments, I eagerly volunteered knowing full well that I had no idea what I was getting myself into. I put together our team of three, 2 of which had the experience I didn’t to help get the job done. They basically made up the technical knowledge I didn’t have to read bash scripts and troubleshoot them. On the other hand, it was my job to figure out how to get the fixes deployed into each environment. That required me to coordinate with the team that puts jobs on the scheduler as well as coordinate with other teams around their deployments. As time went on, I also would look at the logs and troubleshoot after deploying and testing our fixes.
- The impact of our work allowed our team to be more proactive in monitoring our servers instead of reacting to breaking applications. This saved us hours of troubleshooting per incident.
- What I took away from this was the confidence to rely on others to fill my gaps of knowledge as I caught up and the abilities to coordinate and communicate with several teams and managers to get a job done.
Tell me about a time when you had to resolve a conflict
- I’m on a dance crew that performs and competes in urban hip-hop choreography. I’m a member of the executive board, which consists of five officers. My role is the Operations Director, in which I coordinate logistics for upcoming projects, performances, competitions, PR, gear, etc as well as having 20% of the decision-making power on what the crew does next.
- One of our officers, let’s call him J, was teaching a dance for an upcoming performance and another officer, let’s call him K, was unusually becoming increasingly frustrated. I don’t know if K was having a bad day before practice, but it became evident that he was having trouble learning the dance and had a problem with how the dance was taught because he eventually yelled at J. After about 10 seconds of being stunned and watching J trying to stay silent as K let him have it, I realized how bad it looked to have officers arguing in front of the rest of the crew. That lowers morale. So I asked J&K to follow me to a hallway, told the other members to practice what they’ve learned, and privately calmed J&K down. I called for a board meeting right after practice. We each took turns asking if K was alright, voicing our opinions about how dance practice went, and suggestions on how each of us should handle what he felt in the future.
- K apologized for his unusual behavior to both the board and the rest of the crew and we haven’t had an incident like it among any of us since. From this I realized how important it is not to air out our dirty laundry in public, to pause in order to regain focus, and to reflect on our mistakes as a team.
Python
- On a previous assignment, I was on a team that was in charge of managing code environments for a website. That meant we would turn on, shut down, and restart applications on several servers when needed, monitor these servers for issues, and when alerted to issues, we’d escalate. Naturally we coordinated with several teams on code deployments, troubleshooting issues, and code fixes. Whenever we’re required to bring down an environment, we run a validation script that steps through creating an account, a profile, and an application form on the website.
- The script hadn’t been updated in almost a year, so changes to the website since then stopped the script midway through the validation. I was tasked with updating the script and maintaining it.
- The script was written in Python, which I hadn’t touched since college. So, I had to relearn Python, learn about HTML Elements, troubleshoot the script, and fix it. On top of that, I noticed that we only ran the script in certain scenarios, while we manually clicked through the website in other scenarios. So, I added features to the script so that we could run the script for all scenarios.
- Before I fixed the script, we lost 10 minutes to manual validation of the main scenario. Given that we restarted the environment on average 40 times a week and I was maintaining that script for 5 months, I saved my team at least 130 hours. The other not as popular scenarios took between 10 and 20 minutes to complete manually, while the script would get them done in a quarter of the time.
- Would you like me to go a little deeper into how the script worked?
How does the Python script work?
- On a web page, there are corresponding html elements to functional and aesthetic features you see like a button, dropdown menus, textboxes, tabs, options, etc.. Web browsers have a tool that let you identify these html elements. I was able to take the elements that corresponded to certain web page features and programmed the script to click on them, enter text, wait until features load, navigate to a web address, etc.. in a specific order.
- Again, the validation script steps through creating an account, a profile, and an application form on the website.
- The script works by first navigating to yopmail.com (a disposable email creator) to create an email account. Then it navigates to the website to create an account. It would enter all of the necessary personal information into the textboxes including an email address and click a button to complete the process. A confirmation email is sent to the email address, so the script navigates to the email inbox. The script is set to click the refresh button until it identifies the confirmation email and then click the confirmation link that navigates back to the website. It then enters the login information, clicks the login button, clicks a series of buttons to navigate to a page where the script will enter in more personal information for the profile, and clicks another series of buttons to navigate to a page to start an application form. From there, it answers questions on the web pages by entering information, selecting drop down menu options, and clicking buttons to navigate to the next question. At the end, the script clicks a button to download a pdf to a specific folder.
- If there was anything I’d change, it’s the hard coded information that’s inputted into the textboxes. I’d make the script more modular and grab that information from a properties file. At the same time I’d group similar steps/questions from the different scenarios and have one main script instead of a script for each scenario.
AWS
- On my current assignment, I’m on a team that just completed migrating the client’s infrastructure to the cloud in Amazon Web Services. That meant building new servers, installing the same applications that are running on the old servers onto the new ones, migrating data from the old servers to the new servers, validating functionality on the new servers, and successfully transition the current solution from the old servers to the new servers.
- My role was to build the new servers, troubleshoot them, test connections, test that applications are working, coordinate with other teams to install their applications, and validate migrated data.
- I had to learn how to use Terraform Scripting, which was a way to build infrastructure using code, instead of manually using AWS’s console on the web browser. I learned how to make Splunk alerts and New Relic alerts. I got AWS certified as a Developer Associate and Solutions Architect Associate using acloud.guru.
- The migration cut costs for our client and consolidated our contracts with the client (we initially had different components of our solution built and managed separately).