Tampilkan postingan dengan label developers. Tampilkan semua postingan
Tampilkan postingan dengan label developers. Tampilkan semua postingan

Information About Mobile App Developers NYC Offers

Kamis, 03 Juli 2014

By Marla Mills


It is evident that the android platform had made a huge development towards making mobile app developers NYC have their share in the technology world. Given such opportunities, these professionals have managed to develop application on a regular basis. The number of such apps that you can find on various online stores is overwhelming. By reading this work, you will be able to find out why this trend is possible.

At all times, you will the specialists mentioned above busy on their work while maintaining their concentration on one thing. In other words, these people have high levels of focus on what they are doing. As such, it goes without mention that focus is one of the main traits that one will find that the above professionals poses. In aiding their work, these do have written project proposals that guide them in order to complete the work within a specified time.

Another outstanding characteristic of people in the above industry is cautiousness. When coding, there are high chances of making mistakes along the way. The surest way of avoiding such mistakes is by being careful while doing the work. As such, one will not have to do much work in debugging the application. This way, one is able to save resources, money and time.

Although most people some sense of creativity in one way or another, people who are into software developing sector show high levels of creativity. They can come up with new ideas within a short time. This characteristic is important in aiding the professionals make more software that have unique features. Before thinking of becoming a professional in the software sector, you need to have this trait.

Despite having other characteristics, having the relevant and latest technological knowledge comes in handy. Producing an application that will cater for the latest needs of users, one has to understand such techniques in order to deliver something that the public can adopt. With the release of new platforms, people working under the industry make sure that they learn how the new stuff works.

Managing time is big problem for many people. The same situation does not apply to the professionals mentioned in this piece of work. On the contrary, they are able to use the time that they have in the correct and most productive way. At times, even if it means coming up with tight working schedules, these individuals are always to do the same. They are good at managing their time.

Determination and patience is part of the specialists mentioned. No matter the situation, individuals in the software industry are always determined to get where they want. They do this by making sure that they complete anything that they are making and making available to the people. At times, one will have to spend sleepless nights while making final touches on an application.

The traits that this work discusses concerning mobile app developers NYC offers are the reason why these programmers are making it big. If you would like to join this group of professionals, start practicing the requirements. They are simple.




About the Author:



Read More..

Top 20 Java technical interview questions and answers for experienced Java developers

Rabu, 05 Februari 2014

If you are an interviewer -- it really pays to ask well rounded questions to judge the real experience of the candidate as opposed to just relying on the number of years.

If you are an interviewee -- You have no control over what questions will be asked in Java job interviews, but there are a few Java interview questions that are very frequently asked in job interviews, and it really pays to prepare for those questions. Here are a few such questions. This is based on some of my recent interviews. Brushing up on these answers will boost your success rate in Java job interviews.

The focus is on judging your experience. So, go through your resume and reflect back on your hands-on experience. Many of these answers will also serve you well in selling your technical strengths to open ended questions like -- tell me about yourself? , why do you like software development?, when reviewing others work, what do you look for?, what was your most significant accomplishment?, etc

Q1. Can you describe the high level architecture of the application that you had worked on recently? or Can you give a 100 feet birds eye view of the application you were involved in as a developer or designer?

A1. The purpose is to judge your overall experience. Here are a few links that will prepare for this most sought-after question, especially for the experienced professionals.



Q2. How would you go about deciding between SOAP based web service and RESTful web service?
A2. Web services are very popular and widely used to integrate disparate systems. It is imperative to understand the differences, pros, and cons between each approach. Recently, I have been asked these questions very frequently, here is the answer that discusses the pros and cons of SOAP vs. RESTful web services in detail.  

Q3.How will you go about ensuring that you build a more robust application? or How do you improve quality of your application?
A3. This question is very popular with the interviewers because they want to hire candidates who write good quality application. Here are some useful links to prepare for this question.


Q4. What are some of the best practices regarding SDLC? Have you worked in an agile development environment? Did you use test driven development and continuous integration?
A4. 
Q5: Can you write code? How would you go about implementing .....?
A5:  You will be asked to write a small function or a program. The interviewer will be looking for things like
  • How well you analyze the requirements and the solution? Ask relevant questions if the requirements are not clear. Think out loud so that the interviewer knows that how you are approaching the problem.The approach is more important that arriving at the correct solution.
  • List all possible alternatives.
  • Write pseudo code.
  • Write unit tests.
  • Where required, brainstorm with the interviewer.
  • Find ways to improve your initial solution. Talk through thread safety and best practices where applicable.
Here are some links to popular coding questions and answers.
  • Java coding interview questions and answers:. Covers a number of coding questions with answers. These are some of the popular coding interview questions like reversing a string, calculating the Fibonacci number, recursion vs iteration, equals versus ==, etc.

Q6. How would you go about designing a car parking station?
A6.
Map out the requirements:
  • The car park needs to cater for different types of car parks like regular, handicapped, and compact.
  • It should keep track of empty and filled spaces.
  • It should also cater for valet parking.
Map out the classes that would be required. Use a UML class diagram. Here are some points to get started.
  • A CarPark class to represent a parking station.
  • A ParkingSpace can be an abstract class or an interface to represent a parking space, and RegularParkingSpace, HandicappedParkingSpace, CompactParkingSpace, etc are subtypes of a ParkingSpace. This means a RegularParkingSpace is a ParkingSpace.
  • A CarPark has a (i.e. composition) finite number of ParkingSpaces. A CarPark also keeps track of all the parking spaces and a separate list of all the vacant parking spaces.
  • A Vehicle class uses a (i.e. delegation) ParkingSpace.  The Vehicle class will hold attributes using enum classes like  VehicleType and ParkingType. The vehicle types could be Compact, Regular, and Handicapped. The parking types could be Self or Valet. Depending on the requirements, the self or valet types could be designed as subtypes of the Vehicle class.


Q7: Can you design the classes that represent a restaurant?
A7: Very popular. Good understanding of OO design is vital to job interview success. Learn the SOLID design principles, know why you favor composition over inheritance, and dont under estimate the power of coding to interface.
  • Java OO Interview Questions and Answers. A step-by-step tutorial explaining how you would go about designing your classes. The "Core Java Career Essentials" PDF covers more examples on SOLID design principles with working code.

How would you go about identifying thread safety issues in an application? How would you go about identifying memory leaks issues? How would you go about identifying performance issues?, etc to judge your experience. I am yet to work on a project that didnt face problems relating to thread safety, memory leaks, and performance issues. Hence, it really pays to market your skills and experience in fixing issues relating to these common challenges.


Q8. How will you go about fixing memory leaks in Java?
A8. Again, a very common problem, and a thorough answer will go a long way in securing your next Java job.

Q9: How will you go about fixing performance issues in Java?
A9:
  • Detecting performance issues in Java. A basic tutorial covering -- how to detect performance issues.
  • Also, refer to the JMeter tutorials in this blog as to learn how you can put load on your application to simulate concurrent users.

Q10: How will you go about detecting and fixing thread-safety issues in Java?
A10: Debugging concurrency issues and fixing any thread starvation, dead lock, and contention requires skills and experience to identify and reproduce these hard to resolve issues. Here are some techniques to detect concurrency issues.
  • Manually reviewing the code for any obvious thread-safety issues. There are static analysis tools like Sonar, ThreadCheck, etc for catching concurrency bugs at compile-time by analyzing their byte code.
  • List all possible causes and add extensive log statements and write test cases to prove or disprove your theories.
  • Thread dumps are very useful for diagnosing synchronization problems such as deadlocks. The trick is to take 5 or 6 sets of thread dumps at an interval of 5 seconds between each to have a log file that has 25 to 30 seconds worth of runtime action. For thread dumps, use kill -3 in Unix and CTRL+BREAK in Windows. There are tools like Thread Dump Analyzer (TDA), Samurai, etc. to derive useful information from the thread dumps to find where the problem is. For example, Samurai colors idle threads in grey, blocked threads in red, and running threads in green. You must pay more attention to those red threads.
  • There are tools like JDB (i.e. Java DeBugger) where a “watch” can be set up on the suspected variable. When ever the application is modifying that variable, a thread dump will be printed.
  • There are dynamic analysis tools like jstack and JConsole, which is a JMX compliant GUI tool to get a thread dump on the fly. The JConsole GUI tool does have handy features like “detect deadlock” button to perform deadlock detection operations and ability to inspect the threads and objects in error states. Similar tools are available for other languages as well.

Java Interview Questions 11- 13 for experienced developers

Read More..

Unix commands for software developers

Selasa, 04 Februari 2014

Unix is very powerful, and you can achieve a lot with less amount of code. Most production systems run in a Unix environment, and it is very useful to know your commands to solve technical issues. Some handy Unix commands looping, recursive search, control characters,  and crontab.

Q. How will you go about concatenating the contents in a number of text/sql files to a single file? The account_sqls.patch file contains the following entries to a number of SQL files to be executed sequentially.

./tables/account_summary.sql
./tables/account_detail.sql
./tables/account_history.sql
./tables/account_link.sql

How will you combine the SQL contents in the above 4 files into one?
 

A. Firstly, cd to the folder where the account_sqls.patch file is, and then type the following command on a shell command line.

for sql in $(sed -n 1,4p account_sqls.patch); do cat $sql >> accounts_combined.sql; done



1, 4p                                                                    // print lines 1 to 4 from account_sqls.patch
for sql in $(sed -n 1,4p account_sqls.patch);  // for each line read
do cat $sql >> bulk_data_changes.sql; // append the contents of each file to a different file accounts_combined.sql.

Note: This is handy for combining contents from a number of different files.

Q. How will you recursively search for presence of a particular text under multiple folders unix? For example, search for text "CashEnum" within a java project?

A. Use the find and grep commands. The find will look for the files and the grep will filter out the files that has the text "CashEnum".

find myproject -type f -exec grep "CashEnum" {} /dev/null ;

  • -type f --> find files. 
  • the addition of /dev/null is so that grep will consistently print the file name when it finds a match.

The above command will search all file extensions, including .jar. You could restrict it to look for only java files as shown below

find myproject -type f -name *.java -exec grep "CashEnum" {} /dev/null ;


-name *.java --> looks for only java files.

Q.How will you go about executing multiple maven commands on unix? For example, build two separate projects one after another, for example -- project1 and project2. The project2 to should only build if project1 successfully builds.

A. Use the && control operator to combine two commands so that the second is run only if the first command returns a zero exit status. In other words, if the first command runs successfully, the second command runs. If the first command fails, the second command does not run at all. For example:

$ mvn --file project1/pom.xml clean install -Dmaven.test.skip && mvn --file project2/pom.xml clean install -Dmaven.test.skip

Similarly, the || control operator separates two commands and runs the second command only if the first command returns a non-zero exit status, that is if it fails. In other words, if the first command is successful, the second command does not run. This operator is often used when testing for whether a given directory exists and, if not, it creates one.

cd project1/src/main || mkdir -p project1/src/main


the -p command allows you to create any relevant parent directories as well. The && and || control characters can be used together.

Q. How will you check using unix commands that a given class file exists within a jar file?
A. Let us assume that there are a number of jar files sitting under the myjars/lib folder. The following script "search-class-file.sh" sits under myjars.


#!/bin/bash

pattern=$1
shift

for jar in $(find $* -type f -name *.jar)
do
match=`jar -tvf $jar | grep $pattern`
if [ ! -z "$match" ]
then
echo "Found in: $jar"
echo "$match"
fi
done

The above script can be executed as shown below

$ ./search-class-file.sh Rebalance.class ./lib

$0 --> will be ./search-class-file.sh
$1 --> will be Rebalance.class
After shift, $* will be $1 which is ./lib
-z is a string function
if [ ! -z "$match" ] --> means if $match is not zero length

The output will look like

$ ./search-class-file.sh Rebalance.class ./lib
Found in: ./lib/myapp.jar
7007 Wed Jul 11 16:44:16 EST 2012 com/myapp/mortgage/MortgageRebalance.class
5956 Wed Jul 11 16:44:16 EST 2012 com/myapp/bulk/BulkRebalance.class
15880 Wed Jul 11 16:44:16 EST 2012 com/myapp/model/ModelRebalance.class

similar results can be accomplished with either

$ for i in ./lib/*.jar; do jar -tvf "$i" | grep  -i Rebalance.class; done

or

$ find ./lib -name *.jar -o -name *.war -type f | xargs -i bash -c "jar -tvf {}| grep Rebalance.class {}"



Q. How will you go about listing all the users cron jobs?
A. If you are a root user, you can list the cron jobs for all the users as shown below:
for user in $(cut -f1 -d: /etc/passwd); do echo $user; crontab -l $user; done



Where the /etc/passwd file looks something like

root:x:0:1:Super-User:/:/usr/bin/ksh
daemon:x:1:1::/:
bin:x:2:2::/usr/bin:
......


If you need to just list your scheduled jobs then try

crontab -l | more



The ouput will look something like:

# PUWPD001 - Loads insurance data from ins system into online DB
# PUWPD002 - Loads mortgage data from mort system into online DB

# ----------------------------------------------------------------------------------------
0 5 * * 0,1,2,3,4,5,6 . /usr/my_insurance.ksh
10 5 * * 0,1,2,3,4,5,6 . /usr/my_mortgage.ksh



Read More..